中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

易語言怎么通過句柄名來關閉互斥體實現游戲多開

發布時間:2021-06-16 15:51:15 來源:億速云 閱讀:501 作者:小新 欄目:編程語言

這篇文章主要為大家展示了“易語言怎么通過句柄名來關閉互斥體實現游戲多開”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“易語言怎么通過句柄名來關閉互斥體實現游戲多開”這篇文章吧。

DLL命令代碼

.版本 2
.DLL命令 GetProcessHandleCount, 邏輯型
  .參數 hProcess, 整數型
  .參數 pdwHandleCount, 整數型, 傳址
.DLL命令 DuplicateHandle, 邏輯型
  .參數 hSourceProcessHandle, 整數型
  .參數 hSourceHandle, 整數型
  .參數 hTargetProcessHandle, 整數型
  .參數 lpTargetHandle, 整數型, 傳址
  .參數 dwDesiredAccess, 整數型
  .參數 bInheritHandle, 邏輯型
  .參數 dwOptions, 整數型
.DLL命令 GetCurrentProcess, 整數型
.DLL命令 ZwQueryObject, 整數型, "ntdll.dll"
  .參數 ObjectHandle, 整數型
  .參數 ObjectInformationClass, 整數型
  .參數 ObjectInformation, 字節集, 傳址
  .參數 Length, 整數型
  .參數 ResultLength, 整數型, 傳址
.DLL命令 CloseHandle, 邏輯型
  .參數 hObject, 整數型
.DLL命令 WideCharToMultiByte, 整數型
  .參數 CodePage, 整數型
  .參數 dwFlags, 整數型
  .參數 lpWideCharStr, 字節集
  .參數 cchWideChar, 整數型
  .參數 lpMultiByteStr, 文本型
  .參數 cchMultiByte, 整數型
  .參數 lpDefaultChar, 文本型
  .參數 lpUsedDefaultChar, 整數型
.DLL命令 OpenProcess, 整數型
  .參數 dwDesiredAccess, 整數型
  .參數 bInheritHandle, 邏輯型
  .參數 dwProcessId, 整數型
.DLL命令 CreateToolhelp32Snapshot, 整數型
  .參數 dwFlags, 整數型
  .參數 th42ProcessID, 整數型
.DLL命令 Process32First, 整數型
  .參數 hSnapshot, 整數型
  .參數 lppe, LPPROCESSENTRY32
.DLL命令 Process32Next, 整數型
  .參數 hSnapshot, 整數型
  .參數 lppe, LPPROCESSENTRY32

自定義數據類型表

.版本 2
.數據類型 句柄信息
  .成員 句柄, 整數型
  .成員 對象名, 文本型
.數據類型 LPPROCESSENTRY32
  .成員 dwSize, 整數型
  .成員 cntUsage, 整數型
  .成員 th42ProcessID, 整數型
  .成員 th42DefaultHeapID, 整數型
  .成員 th42ModuleID, 整數型
  .成員 cntThreads, 整數型
  .成員 th42ParentProcessID, 整數型
  .成員 pcPriClassBase, 整數型
  .成員 dwFlags, 整數型
  .成員 szExeFile, 字節型, , "260"

關閉互斥體游戲多開的代碼

.版本 2
.程序集 窗口程序集_啟動窗口
.程序集變量 記錄句柄, 整數型
.子程序 _開啟按鈕_被單擊
時鐘1.時鐘周期 = 200
.子程序 啟動多開
.局部變量 句柄列表, 句柄信息, , "0"
.局部變量 計次, 整數型
.局部變量 進程句柄, 整數型, , "0"
.局部變量 l1, 整數型
取進程句柄 (“shiqiee.exe”, 進程句柄)
.計次循環首 (取數組成員數 (進程句柄), l1)
  枚舉句柄 (進程句柄 [l1], 句柄列表)
  .計次循環首 (取數組成員數 (句柄列表), 計次)
    .如果真 (句柄列表 [計次].對象名 = “\Device\HarddiskVolume4\Windows\eelock1.txt” 或 句柄列表 [計次].對象名 = “\Device\HarddiskVolume4\Windows\eelock0.txt” 或 句柄列表 [計次].對象名 = “\Sessions\1\BaseNamedObjects\SA_MUTE0” 或 句柄列表 [計次].對象名 = “\Sessions\1\BaseNamedObjects\SA_MUTE1”)
      關閉句柄 (進程句柄 [l1], 句柄列表 [計次].句柄)
    .如果真結束
  .計次循環尾 ()
.計次循環尾 ()
.子程序 枚舉句柄, 整數型
.參數 進程句柄, 整數型
.參數 句柄列表, 句柄信息, 數組
.局部變量 句柄信息, 句柄信息
.局部變量 HandleCount, 整數型
.局部變量 sHandle, 整數型
.局部變量 tHandle, 整數型
.局部變量 i, 整數型
.局部變量 Buf, 字節集
.局部變量 len, 整數型
.如果真 (GetProcessHandleCount (進程句柄, HandleCount))
  .判斷循環首 (HandleCount > i 且 sHandle < 65536)
    sHandle = sHandle + 4
    .如果真 (DuplicateHandle (進程句柄, sHandle, GetCurrentProcess (), tHandle, 0, 假, 2))
      i = i + 1
      句柄信息.句柄 = sHandle
      句柄信息.對象名 = “”
      Buf = 取空白字節集 (8192)
      .如果真 (ZwQueryObject (tHandle, 1, Buf, 8192, 0) = 0)
        len = 取字節集數據 (Buf, 2, )
        Buf = 取字節集中間 (Buf, 9, len)
        句柄信息.對象名 = UnicodeToAnsi (Buf)
      .如果真結束
      CloseHandle (tHandle)
      加入成員 (句柄列表, 句柄信息)
    .如果真結束
  .判斷循環尾 ()
.如果真結束
返回 (i)
.子程序 UnicodeToAnsi, 文本型
.參數 Unicode, 字節集
.局部變量 ansi_len, 整數型
.局部變量 unicode_len, 整數型
.局部變量 ansi, 文本型
unicode_len = 取字節集長度 (Unicode) ÷ 2
ansi_len = WideCharToMultiByte (936, 0, Unicode, unicode_len, ansi, 0, “”, 0)
ansi = 取空白文本 (ansi_len)
WideCharToMultiByte (936, 0, Unicode, unicode_len, ansi, ansi_len, “”, 0)
返回 (ansi)
.子程序 關閉句柄, 邏輯型
.參數 進程句柄, 整數型
.參數 對象句柄, 整數型
.局部變量 Handle, 整數型
.如果 (DuplicateHandle (進程句柄, 對象句柄, GetCurrentProcess (), Handle, 0, 假, 1))
  CloseHandle (Handle)
  返回 (真)
.否則
  返回 (假)
.如果結束
.子程序 取進程句柄, 整數型
.參數 進程名, 文本型
.參數 進程句柄, 整數型, 可空 數組
.局部變量 LPPROCESSENTRY32, LPPROCESSENTRY32
.局部變量 hSnapshot, 整數型
.局部變量 hProcess, 整數型
.局部變量 j, 整數型
hSnapshot = CreateToolhelp32Snapshot (2, 0)
.如果真 (hSnapshot ≠ -1)
  LPPROCESSENTRY32.dwSize = 296
  j = Process32First (hSnapshot, LPPROCESSENTRY32)
  .判斷循環首 (j ≠ 0)
    .如果真 (到小寫 (進程名) = 到小寫 (到文本 (LPPROCESSENTRY32.szExeFile)))
      hProcess = OpenProcess (2035711, 假, LPPROCESSENTRY32.th42ProcessID)
      加入成員 (進程句柄, hProcess)
    .如果真結束
    j = Process32Next (hSnapshot, LPPROCESSENTRY32)
  .判斷循環尾 ()
  CloseHandle (hSnapshot)
  返回 (hProcess)
.如果真結束
返回 (0)
.子程序 _時鐘1_周期事件
啟動多開 ()
.子程序 _關閉按鈕_被單擊
時鐘1.時鐘周期 = 0

運行結果:

易語言怎么通過句柄名來關閉互斥體實現游戲多開

以上是“易語言怎么通過句柄名來關閉互斥體實現游戲多開”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

鄂州市| 兴宁市| 宝兴县| 荔浦县| 龙井市| 富平县| 湘阴县| 红安县| 长宁县| 阳谷县| 库伦旗| 阳泉市| 昭通市| 无为县| 县级市| 阜南县| 商城县| 大荔县| 尼勒克县| 原阳县| 抚远县| 崇州市| 峨山| 宁远县| 清水县| 禄劝| 苏尼特左旗| 深圳市| 兴宁市| 安阳市| 邓州市| 肇州县| 巨鹿县| 博湖县| 马山县| 西林县| 青阳县| 阿拉善左旗| 关岭| 漯河市| 元谋县|