From d013a35ef5bb3b45b46362c67d6f3ca52a54e96d Mon Sep 17 00:00:00 2001
From: xj qian <qianxj15@sina.com>
Date: 星期一, 01 七月 2024 16:07:55 +0800
Subject: [PATCH] Merge branch 'master' of http://116.62.18.175:6699/r/mis-prj

---
 jrj/xframe/wobject/xutil.hpp |   16 +++++++++++++---
 1 files changed, 13 insertions(+), 3 deletions(-)

diff --git a/jrj/xframe/wobject/xutil.hpp b/jrj/xframe/wobject/xutil.hpp
index b7a6e4d..5a702e7 100644
--- a/jrj/xframe/wobject/xutil.hpp
+++ b/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;
+    }
 };
\ No newline at end of file

--
Gitblit v1.9.3