#pragma once
|
|
#include "xbase.hpp"
|
#include "kobject/kutil.hpp"
|
#include "wobject/xaserver.hpp"
|
#include "win32/win.hpp"
|
|
using kutil = Hxsoft::XFrame::IXFUtil;
|
extern "C" {
|
void* WINAPI GetProcAddressW(HMODULE hModule, const char* lpText);
|
}
|
class xutil
|
{
|
public:
|
static HCURSOR SetCursorWait()
|
{
|
return Hxsoft::XFrame::IXFUtil::SetCursorWait();
|
}
|
|
static int RestoreCursor(HCURSOR hCursor)
|
{
|
return Hxsoft::XFrame::IXFUtil::RestoreCursor(hCursor);
|
}
|
|
static const wchar_t* GetUrlData(const wchar_t* url)
|
{
|
return kutil::GetUrlData((LPWSTR)url);
|
}
|
|
static bool HasCacheData(const wchar_t* url)
|
{
|
return kutil::HasCacheData((LPWSTR)url);
|
}
|
|
static void CacheUrlData(const wchar_t* url,const wchar_t* data)
|
{
|
return kutil::CacheUrlData((LPWSTR)url,(LPWSTR)data);
|
}
|
|
static int SaveToFile(xstring pFile,xstring pData,xstring ext, xstring pFilter, const LPTSTR pFileName=NULL)
|
{
|
return kutil::SaveToFile((LPWSTR)pFile.c_str(), (LPWSTR)pData.c_str(), (LPWSTR)ext.c_str(), (LPWSTR)pFileName);
|
}
|
static LPWSTR MD5(const wchar_t* pStr)
|
{
|
return kutil::MD5((LPWSTR)pStr);
|
}
|
static bool SmallImage(LPCTSTR lpszPathName, LPCTSTR lpszNewPathName, int width, int height, int flag=0)
|
{
|
return kutil::SmallImage(lpszPathName,lpszNewPathName,width,height,flag);
|
}
|
static LPWSTR OpenDialog(HWND Owner,const wchar_t* str)
|
{
|
return kutil::OpenDialog(Owner,(LPWSTR)str);
|
}
|
static LPTSTR FormatDecimalString(LPTSTR str, LPTSTR format, bool& bfree)
|
{
|
return Hxsoft::XUtil::FormatDecimalString(str, format, bfree);
|
}
|
|
static xstring ToXmlTextAndStartSpace(xstring str)
|
{
|
wchar_t* xmlStr = Hxsoft::XUtil::ToXmlTextAndStartSpace(str.c_str());
|
return xmlStr ? xmlStr : str;
|
}
|
|
static xstring ToHtmlTextAndStartSpace(xstring str)
|
{
|
wchar_t* htmlStr = Hxsoft::XUtil::ToHtmlTextAndStartSpace(str.c_str());
|
return htmlStr ? htmlStr : str;
|
}
|
|
static xstring ToXmlText(xstring str)
|
{
|
wchar_t* xmlStr = Hxsoft::XUtil::ToXmlText(str.c_str());
|
return xmlStr? xmlStr : str;
|
}
|
static xstring ToHtmlText(xstring str)
|
{
|
wchar_t* htmlStr = Hxsoft::XUtil::ToHtmlText(str.c_str());
|
return htmlStr? htmlStr : str;
|
}
|
static xstring UnXMLText(xstring str)
|
{
|
wchar_t* xmlStr = Hxsoft::XUtil::UnXMLText(str.c_str());
|
return xmlStr? xmlStr:str;
|
}
|
|
public:
|
static xstring GetModulePath()
|
{
|
wchar_t buf[255];
|
::GetModuleFileNameW(nullptr, buf, 255);
|
PathRemoveFileSpec(buf);
|
return xstring(buf);
|
}
|
|
static xstring GetModuleTmpPath()
|
{
|
xstring tmp = GetModulePath() + L"\\Temp";
|
xaserver::CreateDirectory(tmp);
|
return tmp;
|
}
|
|
static void* GetFuncPtr(const wchar_t* dll, const char* name)
|
{
|
void* fnAttachEvent = nullptr;
|
HMODULE hModule = LoadLibraryW(dll);
|
if (hModule)fnAttachEvent = ::GetProcAddressW(hModule, name);
|
return fnAttachEvent;
|
}
|
};
|