xie-full


C/C++调用Demo

<pre><code>#include &amp;lt;iostream&amp;gt; using namespace std; // 回调指针类型 typedef VOID(CALLBACK* ACCEPT)(DWORD); typedef VOID(CALLBACK* RECEIVE)(DWORD, LPSTR, DWORD); typedef VOID(CALLBACK* CLOSE)(DWORD); // DLL导出函数 typedef DWORD(CALLBACK* InjectFn)(LPCSTR); typedef BOOL(CALLBACK* InitFn)(ACCEPT, RECEIVE, CLOSE); typedef BOOL(CALLBACK* SendFn)(DWORD, LPCSTR); typedef BOOL(CALLBACK* VersionFn)(LPSTR); typedef BOOL(CALLBACK* DestroyFn)(); #ifdef _UNICODE HINSTANCE hModule = LoadLibrary(L&amp;quot;WxLoader.dll&amp;quot;); #else HINSTANCE hModule = LoadLibrary(&amp;quot;WxLoader.dll&amp;quot;); #endif InitFn InitWeChatSocket = (InitFn)GetProcAddress(hModule, &amp;quot;InitWeChatSocket&amp;quot;); VersionFn GetUserWeChatVersion = (VersionFn)GetProcAddress(hModule, &amp;quot;GetUserWeChatVersion&amp;quot;); InjectFn InjectWechat = (InjectFn)GetProcAddress(hModule, &amp;quot;InjectWeChat&amp;quot;); DestroyFn DestroyWeChat = (DestroyFn)GetProcAddress(hModule, &amp;quot;DestroyWeChat&amp;quot;); VOID CALLBACK receive(DWORD clientId, LPSTR data, DWORD len) { std::cout &amp;lt;&amp;lt; &amp;quot;new message! &amp;quot; &amp;lt;&amp;lt; data &amp;lt;&amp;lt; endl; } VOID CALLBACK accept(DWORD clientId) { std::cout &amp;lt;&amp;lt; &amp;quot;new client! &amp;quot; &amp;lt;&amp;lt; endl; } VOID CALLBACK close(DWORD clientId) { std::cout &amp;lt;&amp;lt; &amp;quot;client closed! &amp;quot; &amp;lt;&amp;lt; endl; } int _tmain(int argc, _TCHAR* argv[]) { DWORD in = 0; BOOL rs = FALSE; char szVersion[30] = { 0 }; GetUserWeChatVersion(szVersion); cout &amp;lt;&amp;lt; &amp;quot;当前微信版本: &amp;quot; &amp;lt;&amp;lt; szVersion &amp;lt;&amp;lt; endl; rs = InitWeChatSocket(accept, receive, close); std::cout &amp;lt;&amp;lt; &amp;quot;初始化结果:&amp;quot; &amp;lt;&amp;lt; rs &amp;lt;&amp;lt; endl; in = InjectWechat(&amp;quot;WeChatHelper.dll&amp;quot;); std::cout &amp;lt;&amp;lt; &amp;quot;微信PID:&amp;quot; &amp;lt;&amp;lt; in &amp;lt;&amp;lt; endl; char ch; while (true) { Sleep(500); } DestroyWeChat(); }</code></pre>

页面列表

ITEM_HTML