史萊姆論壇

史萊姆論壇 (http://forum.slime.com.tw/)
-   資訊系統安全備援防護技術文件 (http://forum.slime.com.tw/f139.html)
-   -   Rundll32.exe和Rundll.exe的區別 (http://forum.slime.com.tw/thread168660.html)

psac 2006-02-20 05:57 PM

Rundll32.exe和Rundll.exe的區別
 
Rundll32.exe和Rundll.exe的區別

經常聽到有些朋友說: 呀!系統的註冊表啟動項目有rundll32.exe,系統工作也有rundll32.exe,是不是病毒呀?其實,這是對rundll32.exe接頭不瞭解,它的原理非常簡單,瞭解並掌握其原理對於我們平時的套用非常有用,如果能理解了原理,我們就能活學活用,自己挖掘DLL參數套用技巧。

  Rundll32.exe和Rundll.exe的區別

  所謂Rundll.exe,可以把它分成兩部分,Run(執行)和DLL(動態資料庫),所以,此程序的功能是執行那些不能作為程序單獨執行的DLL文件。而Rundll32.exe則用來執行32位DLL文件。Windows 2000/XP都是NT內核系統,其程式碼都是純32位的,所以在這兩個系統中,就沒有rundll.exe這個程序。

  相反,Windows 98程式碼夾雜著16位和32位,所以同時具有Rundll32.exe和Rundll.exe兩個程序。這就是為什麼Windows 98的System資料夾為主系統檔案夾,而到了Windows 2000/XP時就變成System32為主系統檔案夾(這時的System資料夾是為相容16位程式碼設立的)。

  Rundll.exe是病毒?

  無論是Rundll32.exe或Rundll.exe,獨立執行都是毫無作用的,要在程序後面指定載入DLL文件。在Windows的工作管理器中,我們只能看到rundll32.exe工作,而其實質是使用的DLL。

  有些木馬是利用Rundll32.exe載入DLL形式執行的,但大多數情況下Rundll32.exe都是載入系統的DLL文件,不用太擔心。另外要提起的是,有些病毒木馬利用名字與系統一般工作相似或相同特點,瞞騙用戶。所以,要確定所執行的Rundll32.exe是在%systemroot%\system32目錄下的,注意檔案名稱也沒有變化。

psac 2006-02-20 05:59 PM

Windows原有的利器:Rundll.exe進階套用

首先,請你做個小實驗(請事先儲存好你正在執行的程式的結果)︰

  點擊「開始-程式-Ms-Dos方式」,進入Dos視窗,然後按鍵輸入「rundll32.exe user.exe,restartwindows」,再按下Enter鍵鍵,這時你將看到,機器被重啟了!

  當然,Rundll的功能絕不僅僅是重啟你的機器。其實,Rundll者,顧名思義,執行Dll也,它的功能就是以指令列的方式呼叫Windows的動態鏈結庫,Rundll32.exe與Rundll.exe的區別就在於前者是呼叫32位的鏈結庫,而後者是運用於16位的鏈結庫,它們的指令格式是︰

  RUNDLL.EXE ,,

  這裡要注意三點︰

1.Dll檔案名中不能含有空格,比如該檔案位於c:\Program Files目錄,你要把這個路徑改成c:\Progra∼1;

  2.Dll檔案名與Dll入口點間的逗號不能少,否則程式將出現錯誤並且不會指出任何資訊!

  3.這是最重要的一點︰Rundll不能用來呼叫含返回值參數的Dll,例如Win32API中的GetUserName(), GetTextFace()等。

  在Visual Basic中,提供了一條執行外部程式的指令Shell,格式為︰

  Shell 「指令列」

  如果能配合Rundll32.exe用好Shell指令,會使您的VB程式擁有用其他方法難以甚至無法實現的效果︰仍以重啟為例,傳統的方法需要你在VB工程中先建立一個模組,然後寫入WinAPI的聲明,最後才能在程式中呼叫。而現在只需一句:

  Shell 「rundll32.exe user.exe,restartwindows」就搞定了!

  實際上,Rundll32.exe在呼叫各種Windows控制台和系統選項方面有著獨特的優勢。

  指令列: rundll32.exe shell32.dll,Control_RunDLL

  功能: 顯示控制台

  指令列: rundll32.exe shell32.dll,Control_RunDLL access.cpl,,1

  功能: 顯示「控制台-輔助選項-鍵盤」選項視窗

  指令列: rundll32.exe shell32.dll,Control_RunDLL access.cpl,,2

  功能: 顯示「控制台-輔助選項-聲音」選項視窗

psac 2006-02-20 06:00 PM

Windows原有的利器:Rundll.exe進階套用

首先,請你做個小實驗(請事先儲存好你正在執行的程式的結果)︰

  點擊「開始-程式-Ms-Dos方式」,進入Dos視窗,然後按鍵輸入「rundll32.exe user.exe,restartwindows」,再按下Enter鍵鍵,這時你將看到,機器被重啟了!

  當然,Rundll的功能絕不僅僅是重啟你的機器。其實,Rundll者,顧名思義,執行Dll也,它的功能就是以指令列的方式呼叫Windows的動態鏈結庫,Rundll32.exe與Rundll.exe的區別就在於前者是呼叫32位的鏈結庫,而後者是運用於16位的鏈結庫,它們的指令格式是︰

  RUNDLL.EXE ,,

  這裡要注意三點︰

1.Dll檔案名中不能含有空格,比如該檔案位於c:\Program Files目錄,你要把這個路徑改成c:\Progra∼1;

  2.Dll檔案名與Dll入口點間的逗號不能少,否則程式將出現錯誤並且不會指出任何資訊!

  3.這是最重要的一點︰Rundll不能用來呼叫含返回值參數的Dll,例如Win32API中的GetUserName(), GetTextFace()等。

  在Visual Basic中,提供了一條執行外部程式的指令Shell,格式為︰

  Shell 「指令列」

  如果能配合Rundll32.exe用好Shell指令,會使您的VB程式擁有用其他方法難以甚至無法實現的效果︰仍以重啟為例,傳統的方法需要你在VB工程中先建立一個模組,然後寫入WinAPI的聲明,最後才能在程式中呼叫。而現在只需一句:

  Shell 「rundll32.exe user.exe,restartwindows」就搞定了!

  實際上,Rundll32.exe在呼叫各種Windows控制台和系統選項方面有著獨特的優勢。

  指令列: rundll32.exe shell32.dll,Control_RunDLL

  功能: 顯示控制台

  指令列: rundll32.exe shell32.dll,Control_RunDLL access.cpl,,1

  功能: 顯示「控制台-輔助選項-鍵盤」選項視窗

  指令列: rundll32.exe shell32.dll,Control_RunDLL access.cpl,,2

  功能: 顯示「控制台-輔助選項-聲音」選項視窗

  指令列: rundll32.exe shell32.dll,Control_RunDLL access.cpl,,3

  功能: 顯示「控制台-輔助選項-顯示」選項視窗

  指令列: rundll32.exe shell32.dll,Control_RunDLL access.cpl,,4

  功能: 顯示「控制台-輔助選項-滑鼠」選項視窗

  指令列: rundll32.exe shell32.dll,Control_RunDLL access.cpl,,5

  功能: 顯示「控制台-輔助選項-傳統」選項視窗

  指令列: rundll32.exe shell32.dll,Control_RunDLL sysdm.cpl @1

  功能: 執行「控制台-增加新硬體」嚮導。

  指令列: rundll32.exe shell32.dll,SHHelpShortcuts_RunDLL AddPrinter

  功能: 執行「控制台-增加新印表機」嚮導。

  指令列: rundll32.exe shell32.dll,Control_RunDLL appwiz.cpl,,1

  功能: 顯示 「控制台-增加/移除程式-安裝/卸載」 面板。

  指令列: rundll32.exe shell32.dll,Control_RunDLL appwiz.cpl,,2

  功能: 顯示 「控制台-增加/移除程式-安裝Windows」 面板。

  指令列: rundll32.exe shell32.dll,Control_RunDLL appwiz.cpl,,3

  功能: 顯示 「控制台-增加/移除程式-啟動碟」 面板。

  指令列: rundll32.exe syncui.dll,Briefcase_Create

  功能: 在桌面上建立一個新的「我的公事包」。

  指令列: rundll32.exe diskcopy.dll,DiskCopyRunDll

  功能: 顯示複製軟碟視窗

  指令列: rundll32.exe apwiz.cpl,NewLinkHere %1

  功能: 顯示「建立建立捷逕」的對話視窗,所建立的建立捷逕的位置由%1參數決定。

  指令列: rundll32.exe shell32.dll,Control_RunDLL timedate.cpl,,0

  功能: 顯示「日期與時間」選項視窗。

  指令列: rundll32.exe shell32.dll,Control_RunDLL timedate.cpl,,1

  功能: 顯示「時區」選項視窗。

  指令列: rundll32.exe rnaui.dll,RnaDial [某個撥號連接的名稱]

  功能: 顯示某個撥號連接的撥號視窗。如果已經撥號連接,則顯示目前的連接狀態的視窗。

  指令列: rundll32.exe rnaui.dll,RnaWizard

  功能: 顯示「新增撥號連接」嚮導的視窗。

  指令列: rundll32.exe shell32.dll,Control_RunDLL desk.cpl,,0

  功能: 顯示「內容-背景」選項視窗。

  指令列: rundll32.exe shell32.dll,Control_RunDLL desk.cpl,,1

  功能: 顯示「內容-螢螢幕保護程式護」選項視窗。

  指令列: rundll32.exe shell32.dll,Control_RunDLL desk.cpl,,2

  功能: 顯示「內容-外觀」選項視窗。

  指令列: rundll32.exe shell32.dll,Control_RunDLL desk.cpl,,3



功能: 顯示顯示「內容-內容」選項視窗。

  指令列: rundll32.exe shell32.dll,SHHelpShortcuts_RunDLL FontsFolder

  功能: 顯示Windows的「字體」檔案夾。

  指令列: rundll32.exe shell32.dll,Control_RunDLL main.cpl @3

  功能: 同樣是顯示Windows的「字體」檔案夾。

  指令列: rundll32.exe shell32.dll,SHformatDrive

  功能: 顯示格式化軟碟對話視窗。

  指令列: rundll32.exe shell32.dll,Control_RunDLL joy.cpl,,0

  功能: 顯示「控制台-遊戲控制器-一般」選項視窗。

  指令列: rundll32.exe shell32.dll,Control_RunDLL joy.cpl,,1

  功能: 顯示「控制台-遊戲控制器-進階」選項視窗。

  指令列: rundll32.exe mshtml.dll,PrintHTML (HTML我的文件)

  功能: 列印HTML我的文件。

  指令列: rundll32.exe shell32.dll,Control_RunDLL mlcfg32.cpl

  功能: 顯示Microsoft Exchange一般選項視窗。

  指令列: rundll32.exe shell32.dll,Control_RunDLL main.cpl @0

  功能: 顯示「控制台-滑鼠」 選項 。

  指令列: rundll32.exe shell32.dll,Control_RunDLL main.cpl @1

  功能: 顯示 「控制台-鍵盤內容-速度」選項視窗。

  指令列: rundll32.exe shell32.dll,Control_RunDLL main.cpl @1,,1

  功能: 顯示 「控制台-鍵盤內容-語言」選項視窗。

  指令列: rundll32.exe shell32.dll,Control_RunDLL main.cpl @2

  功能: 顯示Windows「印表機」檔案夾。

  指令列: rundll32.exe shell32.dll,Control_RunDLL main.cpl @3

  功能: 顯示Windows「字體」檔案夾。

  指令列: rundll32.exe shell32.dll,Control_RunDLL main.cpl @4

  功能: 顯示「控制台-輸入法內容-輸入法」選項視窗。

  指令列: rundll32.exe shell32.dll,Control_RunDLL modem.cpl,,add

  功能: 執行「增加新調製解調器」嚮導。

  指令列: rundll32.exe shell32.dll,Control_RunDLL mmsys.cpl,,0

  功能: 顯示「控制台-多媒體內容-音瀕」內容頁。

  指令列: rundll32.exe shell32.dll,Control_RunDLL mmsys.cpl,,1

  功能: 顯示「控制台-多媒體內容-視瀕」內容頁。

  指令列: rundll32.exe shell32.dll,Control_RunDLL mmsys.cpl,,2

  功能: 顯示「控制台-多媒體內容-MIDI」內容頁。

  指令列: rundll32.exe shell32.dll,Control_RunDLL mmsys.cpl,,3

  功能: 顯示「控制台-多媒體內容-CD音樂」內容頁。

  指令列: rundll32.exe shell32.dll,Control_RunDLL mmsys.cpl,,4

  功能: 顯示「控制台-多媒體內容-設備」內容頁。

  指令列: rundll32.exe shell32.dll,Control_RunDLL mmsys.cpl @1

  功能: 顯示「控制台-聲音」選項視窗。

  指令列: rundll32.exe shell32.dll,Control_RunDLL netcpl.cpl

  功能: 顯示「控制台-網路」選項視窗。

  指令列: rundll32.exe shell32.dll,Control_RunDLL odbccp32.cpl

  功能: 顯示ODBC32資料管理選項視窗。

  指令列: rundll32.exe shell32.dll,OpenAs_RunDLL

  功能: 顯示指定檔案(driveath ilename)的「開啟方式」對話視窗。

  指令列: rundll32.exe shell32.dll,Control_RunDLL password.cpl

  功能: 顯示「控制台-密碼」選項視窗。

  指令列: rundll32.exe shell32.dll,Control_RunDLL powercfg.cpl

  功能: 顯示「控制台-電源管理內容」選項視窗。

  指令列: rundll32.exe shell32.dll,SHHelpShortcuts_RunDLL

  PrintersFolder

  功能: 顯示Windows「印表機」檔案夾。(同rundll32.exe shell32.dll,Control_RunDLLmain.cpl @2)

  指令列: rundll32.exe shell32.dll,Control_RunDLL intl.cpl,,0

  功能: 顯示「控制台-區域設定內容-區域設定」選項視窗。

  指令列: rundll32.exe shell32.dll,Control_RunDLL intl.cpl,,1

  功能: 顯示「控制台-區域設定內容-數位」選項視窗。

  指令列: rundll32.exe shell32.dll,Control_RunDLL intl.cpl,,2

psac 2006-09-20 07:19 PM

在Delphi程式中呼叫控制台設置功能
應用程式執行時,有時需要對系統環境有特殊要求。例如,在Delphi資料庫應用程式中可能需要進行BDE(Borland Database Engine)或ODBC資料源名稱(DSN:Data Source Name)的設置;在網路應用程式中可能需要進行網路配置設置、Modem內容設置或用戶撥號連接的帳號和密碼的設置並儲存在系統中;在CTI(Computer-Telephony Integration)應用程式中可能需要進行電話撥號內容的設置;在遊戲程式中可能需要對多媒體或遊戲控制器進行設置;等等。這時候就需要改變Windows系統的環境設置,以適應應用程式正常執行的要求。當應用程式不能自行進行環境設置時,可能需要軟件用戶來參與、協助完成設置。

Win9X/NT的大多數系統設置是在控制台中進行的。我們可以要求用戶自己打開控制台尋找相應的專案進行設置,此時要求用戶對控制台相當熟悉;也可以在程式中自動為用戶打開控制台並選擇相應的專案,此時用戶所做的只是進行設置。後一種方法無疑更具有友好性,更能提高用戶的工作效率。

控制台的大多數專案設置,都對應Windows的System目錄下的一個CPL文件,如「Internet」內容對應的文件為InetCpl.cpl、「多媒體」內容對應的文件為MmSys.cpl等。通過呼叫這些文件可以打開相應的內容設置視窗,甚至可以跳到相應的內容頁如「Internet」內容的「連接」內容頁,有效減少軟件用戶的操作步驟。

CPL文件的呼叫格式為「RunDLL32.exe Shell32.dll,Control_RunDLL CPLFile.cpl,,ItemNo」(可參見註冊表中HKEY_CLASSES_ROOT\cplfile\shell\cplopen\command的預定值),其中CPLFile.cpl為CPL文件,ItemNo為專案編號。在Delphi程式中,可以用WinExec或CreateProcess函數來實現CPL文件呼叫,從而實現對控制台的設置選項目的呼叫。如進行撥號連接的帳號和密碼設置要呼叫「Internet」內容的「連接」內容頁,可以用語句「WinExec(』RunDLL32.exe Shell32.dll,Control_RunDLL InetCpl.cpl,,3』,, SW_SHOWNORMAL);」;解決2000年問題中對兩位年份輸入的解釋要呼叫「區域設置」的「日期」內容頁,可以用語句:「WinExec(』RunDLL32.exe Shell32.dll,Control_RunDLL Intl.cpl,,4』,, SW_SHOWNORMAL);」。

控制台各專案設置呼叫所對應的語句列表如下:

//打開控制台
WinExec(』RunDLL.exe Shell32.DLL,Control_RunDLL』,SW_SHOWNORMAL);

//32位ODBC資料源管理器,ODBC資料源、ODBC驅動程式設置
//沒有提供參數區分「用戶DSN」「系統DSN」「文件DSN」「ODBC驅動程式」「跟蹤」「關於」六個內容頁
WinExec(』RunDLL32.exe Shell32.dll,Control_RunDLL ODBCCP32.CPL』,SW_SHOWNORMAL);

//BDE Adminstrator
//沒有提供參數區分「Databases」和「Configuration」兩個內容頁
WinExec(』RunDLL32.exe Shell32.dll,Control_RunDLL BdeAdmin.CPL』,SW_SHOWNORMAL);

//Internet 內容,可有ItemNo參數
//「一般」內容頁
WinExec(』RunDLL32.exe Shell32.dll,Control_RunDLL InetCpl.cpl,,0』, SW_SHOWNORMAL);
//「安全」內容頁
WinExec(』RunDLL32.exe Shell32.dll,Control_RunDLL InetCpl.cpl,,1』, SW_SHOWNORMAL);
//「內容」內容頁
WinExec(』RunDLL32.exe Shell32.dll,Control_RunDLL InetCpl.cpl,,2』, SW_SHOWNORMAL);
//「連接」內容頁
WinExec(』RunDLL32.exe Shell32.dll,Control_RunDLL InetCpl.cpl,,3』, SW_SHOWNORMAL);
//「程式」內容頁
WinExec(』RunDLL32.exe Shell32.dll,Control_RunDLL InetCpl.cpl,,4』, SW_SHOWNORMAL);
//「高階」內容頁
WinExec(』RunDLL32.exe Shell32.dll,Control_RunDLL InetCpl.cpl,,5』, SW_SHOWNORMAL);

//電話撥號內容,沒有提供參數區分「我的位置」和「電話語音驅動程式」兩個內容頁
WinExec(』RunDLL32.exe Shell32.dll,Control_RunDLL Telephon.cpl』, SW_SHOWNORMAL);

//電源管理設置,沒有提供參數區分「電源方案」和「高階」兩個內容頁
WinExec(』RunDLL32.exe Shell32.dll,Control_RunDLL PowerCfg.cpl』, SW_SHOWNORMAL);

//調製解調器設置,沒有提供參數區分「一般」和「診斷」兩個內容頁
WinExec(』RunDLL32.exe Shell32.dll,Control_RunDLL Modem.cpl』, SW_SHOWNORMAL);

//多媒體設置,可有ItemNo參數
//「音頻」內容頁
WinExec(』RunDLL32.exe Shell32.dll,Control_RunDLL Mmsys.cpl,,0』, SW_SHOWNORMAL);
//「視頻」內容頁
WinExec(』RunDLL32.exe Shell32.dll,Control_RunDLL Mmsys.cpl,,1』, SW_SHOWNORMAL);
//「MIDI」內容頁
WinExec(』RunDLL32.exe Shell32.dll,Control_RunDLL Mmsys.cpl,,2』, SW_SHOWNORMAL);
//「CD音樂」內容頁
WinExec(』RunDLL32.exe Shell32.dll,Control_RunDLL Mmsys.cpl,,3』, SW_SHOWNORMAL);
//「設備」內容頁
WinExec(』RunDLL32.exe Shell32.dll,Control_RunDLL Mmsys.cpl,,4』, SW_SHOWNORMAL);

//輔助選項設置,可有ItemNo參數
//「鍵盤」內容頁
WinExec(』RunDLL32.exe Shell32.dll,Control_RunDLL access.cpl,,1』,SW_SHOWNORMAL);
//「聲音」內容頁
WinExec(』RunDLL32.exe Shell32.dll,Control_RunDLL access.cpl,,2』, SW_SHOWNORMAL);
//「顯示」內容頁
WinExec(』RunDLL32.exe Shell32.dll,Control_RunDLL access.cpl,,3』, SW_SHOWNORMAL);
//「滑鼠」內容頁
WinExec(』RunDLL32.exe Shell32.dll,Control_RunDLL access.cpl,,4』, SW_SHOWNORMAL);
//「一般」內容頁
WinExec(』RunDLL32.exe Shell32.dll,Control_RunDLL access.cpl,,5』, SW_SHOWNORMAL);

//密碼設置,沒有提供參數區分「更改密碼」和「修改用戶配置」兩個內容頁
WinExec(』RunDLL32.exe Shell32.dll,Control_RunDLL Password.cpl』, SW_SHOWNORMAL);

//區域設置,可有ItemNo參數
//「區域設置」內容頁
WinExec(』RunDLL32.exe Shell32.dll,Control_RunDLL Intl.cpl,,0』, SW_SHOWNORMAL);
//「數位」內容頁
WinExec(』RunDLL32.exe Shell32.dll,Control_RunDLL Intl.cpl,,1』, SW_SHOWNORMAL);
//「貨幣」內容頁
WinExec(』RunDLL32.exe Shell32.dll,Control_RunDLL Intl.cpl,,2』, SW_SHOWNORMAL);
//「時間」內容頁
WinExec(』RunDLL32.exe Shell32.dll,Control_RunDLL Intl.cpl,,3』, SW_SHOWNORMAL);
//「日期」內容頁
WinExec(』RunDLL32.exe Shell32.dll,Control_RunDLL Intl.cpl,,4』, SW_SHOWNORMAL);

//日期/時間設置,可有ItemNo參數
//「日期和時間」內容頁
WinExec(』RunDLL32.exe Shell32.dll,Control_RunDLL TimeDate.cpl,,0』, SW_SHOWNORMAL);
//「時區」內容頁
WinExec(』RunDLL32.exe Shell32.dll,Control_RunDLL TimeDate.cpl,,1』, SW_SHOWNORMAL);

//滑鼠設置,沒有提供參數區別「按鍵」、「指標」和「移動」三個內容頁
WinExec(』RunDLL32.exe Shell32.dll,Control_RunDLL Main.cpl』, SW_SHOWNORMAL);

//新增/刪除程式設置,可有ItemNo參數
//「安裝/卸載」內容頁
WinExec(』RunDLL32.exe Shell32.dll,Control_RunDLL AppWiz.cpl,,1』, SW_SHOWNORMAL);
//「Windows安裝程式」內容頁
WinExec(』RunDLL32.exe Shell32.dll,Control_RunDLL AppWiz.cpl,,2』, SW_SHOWNORMAL);
//「啟動碟」內容頁
WinExec(』RunDLL32.exe Shell32.dll,Control_RunDLL AppWiz.cpl,,3』, SW_SHOWNORMAL);

//網路設置,沒有提供參數區別「配置」、「標識」和「訪問控制」三個內容頁
WinExec(』RunDLL32.exe Shell32.dll,Control_RunDLL NetCpl.cpl』, SW_SHOWNORMAL);

//系統設置,
//「一般」內容頁, 可有ItemNo參數
WinExec(』RunDLL32.exe Shell32.dll,Control_RunDLL SysDm.cpl,,0』, SW_SHOWNORMAL);
//「設備管理器」內容頁
WinExec(』RunDLL32.exe Shell32.dll,Control_RunDLL SysDm.cpl,,1』, SW_SHOWNORMAL);
//「硬體配置文件」內容頁
WinExec(』RunDLL32.exe Shell32.dll,Control_RunDLL SysDm.cpl,,2』, SW_SHOWNORMAL);
//「性能」內容頁
WinExec(』RunDLL32.exe Shell32.dll,Control_RunDLL SysDm.cpl,,3』, SW_SHOWNORMAL);

//顯示設置, 可有ItemNo參數
//「背景」內容頁
WinExec(』RunDLL32.exe Shell32.dll,Control_RunDLL desk.cpl,,0』, SW_SHOWNORMAL);
//「螢幕保護程式」內容頁
WinExec(』RunDLL32.exe Shell32.dll,Control_RunDLL desk.cpl,,1』, SW_SHOWNORMAL);
//「外觀」內容頁
WinExec(』RunDLL32.exe Shell32.dll,Control_RunDLL desk.cpl,,2』, SW_SHOWNORMAL);
//「設置」內容頁
WinExec(』RunDLL32.exe Shell32.dll,Control_RunDLL desk.cpl,,3』, SW_SHOWNORMAL);

//遊戲控制器設置,可有ItemNo參數
//「一般」內容頁
WinExec(』RunDLL32.exe Shell32.dll,Control_RunDLL Joy.cpl,,0』, SW_SHOWNORMAL);
//「高階」內容頁
WinExec(』RunDLL32.exe Shell32.dll,Control_RunDLL Joy.cpl,,1』, SW_SHOWNORMAL);

//掃瞄儀與數位相機設設置,沒有提供參數區分「設備」和「記錄設置」兩個內容頁
WinExec(』RunDLL32.exe Shell32.dll,Control_RunDLL StiCpl.cpl』, SW_SHOWNORMAL);



以上程式在PWIN98+DELPHI3.0下除錯通過.


所有時間均為台北時間。現在的時間是 04:44 PM

Powered by vBulletin® 版本 3.6.8
版權所有 ©2000 - 2024, Jelsoft Enterprises Ltd.

『服務條款』

* 有問題不知道該怎麼解決嗎?請聯絡本站的系統管理員 *


SEO by vBSEO 3.6.1