LiFan
2024-07-05 9e409d6e1e2cb1d35cf26f3fd2bd9048c624280f
jrj/xframe/wobject/xutil.hpp
@@ -6,6 +6,9 @@
#include "win32/win.hpp"
using kutil = Hxsoft::XFrame::IXFUtil;
extern "C" {
    void* WINAPI  GetProcAddressW(HMODULE hModule, const char* lpText);
}
class xutil
{
public:
@@ -34,9 +37,9 @@
        return kutil::CacheUrlData((LPWSTR)url,(LPWSTR)data);
    }
    static int SaveToFile(const LPTSTR pFile,const LPTSTR pData,const LPTSTR ext, const LPTSTR pFilter, const LPTSTR pFileName=NULL)
    static int SaveToFile(xstring pFile,xstring pData,xstring ext, xstring pFilter, const LPTSTR pFileName=NULL)
    {
        return kutil::SaveToFile((LPWSTR)pFile,(LPWSTR)pData,(LPWSTR)ext,(LPWSTR)pFileName);
        return kutil::SaveToFile((LPWSTR)pFile.c_str(), (LPWSTR)pData.c_str(), (LPWSTR)ext.c_str(), (LPWSTR)pFileName);
    }
    static LPWSTR MD5(const wchar_t* pStr)
    {
@@ -59,7 +62,7 @@
    static xstring GetModulePath()
    {
        wchar_t buf[255];
        GetModuleFileName(0, buf, 255);
        ::GetModuleFileNameW(nullptr, buf, 255);
        PathRemoveFileSpec(buf);
        return xstring(buf);
    }
@@ -71,4 +74,11 @@
        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;
    }
};