winapi

    1熱度

    1回答

    我需要在等待事件修復死鎖時抽取COM消息。儘可能少地輸入消息來處理該COM調用會更好。該角色的最佳人選是CoWaitForMultipleHandles,但starting from Vista除了COM消息外,還會泵送WM_PAINT。對於我來說,重新導入WM_PAINT對我來說太危險了,我不想安裝一個自定義填充數據庫作爲這個問題的解決方案。 我試圖泵送COM消息手動發送到隱藏的消息窗口。 我發

    1熱度

    1回答

    我有一些獨特的按鈕,我只想一次顯示其中的一個。我希望它們居中,所以我有第一個按鈕居中對話框。如果我想顯示第三個按鈕,我想給它第一個按鈕座標並隱藏第一個按鈕。 如何複製按鈕座標並將其他按鈕座標設置爲複製值? Ex。可以說我有... PB_ONE PB_TWO 我怎樣才能抓住PB_ONE的座標,並設定PB_TWO的座標PB_ONE? RECT rcButton; GetWindowRect(

    0熱度

    1回答

    我試圖弄清楚如何通過C++ /#或Windows腳本以編程方式啓動Windows 10附帶的新虛擬觸控板,該虛擬觸控板應該是通用Windows平臺應用程序。 後一些註冊表黑客,我想通了,我可以啓動觸摸板利用launch behavior with registered protocols,就像這樣: "%SystemRoot%\system32\LaunchWinApp.exe" "ms-virt

    0熱度

    2回答

    例如IDA Pro的節目導入表包含在庫函數CheckTokenMembership API-MS-雙贏安全基礎l1-2-0 對於API調用https://msdn.microsoft.com/en-us/library/windows/desktop/aa376389(v=vs.85).aspx檢查MSDN信息它說,這是在ADVAPI32.DLL 但是試圖 BP ADVAPI32!CheckTok

    0熱度

    1回答

    我寫一個Visual C++程序獲取打印作業的詳細信息。 代碼如下所示: HANDLE hPrinter; DWORD needed, returned, byteUsed,level; JOB_INFO_2 *pJobStorage1=NULL; level = 2; GetJob(hPrinter, jobId, level, NULL, 0, &needed); if (GetL

    1熱度

    1回答

    我正在開發一個多線程程序來讀寫串口。如果我用Putty測試我的應用程序,一切都很好。但是,當我用創建的.exe文件測試它時,它不起作用。 (我在VS2017中啓動程序,然後是.exe文件) 例如:我的輸入:「測試」,輸出在另一個窗口中:「Teeeeeeeeeeeessssssssssttttttt」。 我的代碼發送數據: void SendDataToPort() { for (size_t

    0熱度

    2回答

    我希望模擬鼠標左鍵單擊另一個窗口,並按住該按鈕約2秒。我曾嘗試下面的代碼: int WM_LBUTTONDOWN = 0x0201; int WM_LBUTTONUP = 0x0202; SendMessage(hd, WM_LBUTTONDOWN, new IntPtr(1), lParam); Thread.Sleep(2000); Sen

    1熱度

    1回答

    我拿了一個示例代碼,它從FASM示例目錄創建一個簡單的DLL,並根據我的需要進行調整。然而,當我做一些(從我的POV無辜)更改,生成的二進制文件被損壞 - 運行使用此庫的exe生成錯誤代碼0xC000007B又名INVALID_IMAGE_FORMAT。 DLL的代碼: ; DLL creation example format PE GUI 4.0 DLL entry DllEntryPo

    0熱度

    1回答

    在我的電腦,每當我按下或釋放鍵的同時使用Microsoft Visual Studio調試器,我一直看到的消息是這樣的: 主要arival和鉤 (拼寫意) 按下和釋放進入,我看到的消息是這樣的: Key arival and hookKey arival and hook 這是我正在調試的任何應用程序。病毒/間諜軟件軟件已經完成掃描 - 不知道還有什麼可以解釋它。 有什麼辦法可以確定發送這些調試消

    0熱度

    1回答

    我正在寫一個恢復應用程序,從Chrome中提取密碼。它有一個GUI,所以我使用了SQLite包裝器,它使用SQLConnection和SQLQuery。這裏是我的代碼片段: //Create our blob stream TStream *Stream2 = SQLQuery1->CreateBlobStream(SQLQuery1->FieldByName("password_value")