如何利用 KMPlayer 程式來擷取影片中的畫面?
有位朋友跟我說,他想要在影片中擷取畫 面,可是利用Windows的PrtScr鍵抓到的畫面,抓不到影片的畫面,只能抓到播放器的介面,還有Windows的桌面其他地方,所以來詢問應該怎 麼抓才能抓得到正確的畫面。
由於朋友的電腦中有安裝 KMPlayer 程式,那麼就用直接就地取材,不需要其他的抓圖軟體了。首先調出KMPlayer的功能選單,如下圖
由於在這圖中並沒有發現有擷圖的功能選項,所以我們要將此進階功能開啟,請選擇選項,再把進階選 單的功能打勾
勾選完後就可以看到擷取的功能跑出來了
KMPlayer 無法擷圖,出現「不能在超級速度模式下工作,或沒有KMP轉換過濾器。」的錯誤訊息
在 上一篇文章[如何利用 KMPlayer 程式來擷取影片中的畫面?] 幫朋友弄出了進階的擷取功能後,我就讓他自己去抓圖了,他平常在抓RMVB、AVI 檔案的擷圖都還OK沒什麼問題。過沒多久,他告訴我說在抓圖時出現了「不能在超級速度模式下工作,或沒有KMP轉換過濾器。」的錯誤訊息。
我詢問了他的狀況,發現他的檔案是WMV格式的,於是我上網去找相關的知識,大多數的 人都是說要按下 ALF + F 鍵把超級速度模式關閉
調出設定選項,咦 ∼ 我的「超高速模式」沒有開啟呀
有開啟的模式是這樣子的
所以網路上大家所說的設定均不適用在這個地方•••沒關係,我再耐心的找找看網路文章,終於讓我找到在對岸的同胞 有一篇文有提到這個問題,我跟著作完後就能解決這個問題了,所以我把我的操作狀況記錄下來,讓其他有遇到同樣問題的人也可以得到解答。
首先 先到參數設定
在參數設定中,先點選左側的視訊處理,再點選通用, 接著將條件改為總是使用(強烈推薦),接著按下方的關閉
( 註:既然程式中寫著是強烈推薦,為什麼在KMPlayer程式安裝完後的內定值卻不是選擇此項?真不知韓國人在想什麼.....)
這樣子設定完後,將 KMPlayer 程式關閉再重新開啟就可以順利抓圖了
2010年2月24日 星期三
2010年2月22日 星期一
不用主機板啟動電源 Power 的方法
不用主機板啟動電源 Power 的方法
修改的目的在於,使 ATX Power 可以不依靠主機板而能在通電後直接啟動.
接 頭卡榫朝上.圖左下角橙色方形為腳位1,右上方紅色方形為腳位20.圖中綠色梯形為腳位14.黑色腳位者為接地.
一般的教學,是透過腳位14與接 地腳位接觸所形成的"低電位"來達到啟動Power的功能.
例如,將腳位14與腳位15相接.
上頭為20 Pin的ATX接頭,另外還有24 Pin的接頭,則是在上圖右方再多出4 Pin.綠色 PS-ON 腳位一樣是左上邊數來第4個腳位.
20 Pin 腳位功能
========================================
1 橘色 3.3V 提供 +3.3V 電源
2 橘色 3.3V 提供 +3.3V 電源
3 黑色 地線
4 紅色 5V 提供 +5V 電源
5 黑色 地線
6 紅色 5V 提供 +5V 電源
7 黑色 地線
8 灰色 Power OK電源正常工作
9 紫色 +5VSB 提供 +5V Stand by電源,供電源啟動電路用
10 黃色 12V 提供 +12V 電源
11 橘色 3.3V 提供 +3.3V 電源
12 藍色 -12V 提供 -12V 電源
13 黑色 地線
14 綠色 PS-ON 電源啟動信號,低電壓-電源開啟,高電壓-電源關閉
15 黑色 地線
16 黑色 地線
17 黑色 地線
18 白色 -5V 提供 -5V 電源
19 紅色 5V 提供 +5V 電源
20 紅色 5V 提供 +5V 電源
========================================
這 樣只要ATX Power電源接上,不用透過主機板,ATX Power就可以自行啟動.
修改的目的在於,使 ATX Power 可以不依靠主機板而能在通電後直接啟動.
接 頭卡榫朝上.圖左下角橙色方形為腳位1,右上方紅色方形為腳位20.圖中綠色梯形為腳位14.黑色腳位者為接地.
一般的教學,是透過腳位14與接 地腳位接觸所形成的"低電位"來達到啟動Power的功能.
例如,將腳位14與腳位15相接.
上頭為20 Pin的ATX接頭,另外還有24 Pin的接頭,則是在上圖右方再多出4 Pin.綠色 PS-ON 腳位一樣是左上邊數來第4個腳位.
20 Pin 腳位功能
========================================
1 橘色 3.3V 提供 +3.3V 電源
2 橘色 3.3V 提供 +3.3V 電源
3 黑色 地線
4 紅色 5V 提供 +5V 電源
5 黑色 地線
6 紅色 5V 提供 +5V 電源
7 黑色 地線
8 灰色 Power OK電源正常工作
9 紫色 +5VSB 提供 +5V Stand by電源,供電源啟動電路用
10 黃色 12V 提供 +12V 電源
11 橘色 3.3V 提供 +3.3V 電源
12 藍色 -12V 提供 -12V 電源
13 黑色 地線
14 綠色 PS-ON 電源啟動信號,低電壓-電源開啟,高電壓-電源關閉
15 黑色 地線
16 黑色 地線
17 黑色 地線
18 白色 -5V 提供 -5V 電源
19 紅色 5V 提供 +5V 電源
20 紅色 5V 提供 +5V 電源
========================================
這 樣只要ATX Power電源接上,不用透過主機板,ATX Power就可以自行啟動.
電腦備份與還原技巧:GGhost 10.03.09 一鍵恢復 / 一鍵還原教學 繁體中文版
從GHOST 8.3 更新到GGhost 10.03.09 一鍵恢復 還原 [支持Windows 7 x32 x64]
此教學也支援 XP Vista 作業系統哦
按照製作的教學慣例,一定先提供軟體的載點,
那麼就來下載一鍵還原並看圖文教學吧!
下載點如下
http://bitshare.com/?f=oc3tjtfn
在安裝GGhost 10.03.09 一鍵恢復時
要先確定自己的電腦有2個分割區 C槽與D槽或更多
因為一鍵還原的存放資料的分割區是系統硬碟的最後一個分割區
如果你的系統有C、D、E三個槽,它會放在E槽,光碟機不算喔
如果沒有分割成多個分割區或是最後一個槽的容量不夠
就無法成為C槽備份資料存放分割區
1.下載壓縮檔並解壓縮
在資料夾找到一鍵還原安裝程式點擊2下執行安裝
按下一步
按下一步
進行安裝
把安裝百度工具列的勾拿掉在按完成。
不然會安裝百度工具列在IE上
一鍵恢復安裝後會出現在桌面跟所有程式裡
不過是以英文的命名出現
執行它開始備份
你預設的的語言是繁體中文
按確定
把系統整理一下在開始備份,像是資源回收桶要清理
因為備份後的系統在還原就是現在的狀態
這邊選備份後按確定
這邊按是之後會重新開機然後進入備份模式,都不用按動作就會備份,備份後會重新開機就完成備份。
此教學也支援 XP Vista 作業系統哦
按照製作的教學慣例,一定先提供軟體的載點,
那麼就來下載一鍵還原並看圖文教學吧!
下載點如下
http://bitshare.com/?f=oc3tjtfn
在安裝GGhost 10.03.09 一鍵恢復時
要先確定自己的電腦有2個分割區 C槽與D槽或更多
因為一鍵還原的存放資料的分割區是系統硬碟的最後一個分割區
如果你的系統有C、D、E三個槽,它會放在E槽,光碟機不算喔
如果沒有分割成多個分割區或是最後一個槽的容量不夠
就無法成為C槽備份資料存放分割區
1.下載壓縮檔並解壓縮
在資料夾找到一鍵還原安裝程式點擊2下執行安裝
按下一步
1.選擇安裝的位置,預設是在第一個硬碟的最後一個分區,不知道怎麼選就用預設
2.這個選項是設定要是無法進入Windows時啟動一鍵恢復的方式,一樣不知道就用預設
3.開機顯示一鍵恢復選單延遲的時間,預設是5秒,建議改成3秒才不會每次開機都要等很久
選好按下一步
按下一步
進行安裝
把安裝百度工具列的勾拿掉在按完成。
不然會安裝百度工具列在IE上
一鍵恢復安裝後會出現在桌面跟所有程式裡
不過是以英文的命名出現
執行它開始備份
你預設的的語言是繁體中文
按確定
把系統整理一下在開始備份,像是資源回收桶要清理
因為備份後的系統在還原就是現在的狀態
這邊選備份後按確定
之後要是電腦有問題要還原就同樣步驟,只是把備份改成還原重新開機就可以復原到之前備份的狀態。
2010年2月12日 星期五
Oscdimg 命令列選項
Oscdimg 命令列選項
Oscdimg 命令列選項 適用於: Windows VistaOscdimg 是一個命令列工具,用來建立自訂 32 位元或 64 位元版 Windows PE 的映像檔案 (.iso)。然後您可以將該 .iso 檔案燒錄到 CD-ROM 或 DVD-ROM。Oscdimg 支援 ISO 9660、Joliet 及通用磁碟格式 (UDF) 檔案系統。
Oscdimg 命令列選項下列命令列選項可用於 Oscimg。oscdimg [options] SourceLocationTargetFile
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
瘋狂小狼犬: BAT批次檔案語法(上)
瘋狂小狼犬: BAT批次檔案語法(上)
"BAT批次檔案語法(上)"
副檔名是bat(在nt/2000/xp/2003下也可以是cmd)的檔就是批次檔案。
==== 注 =======================================
.bat是dos下的批次檔案
.cmd是nt內核命令行環境的另一種批次檔案
從 更廣義的角度來看,unix的shell腳本以及其他作業系統甚至應用程式中由外殼進行解釋執行的文本,都具有與批次檔案十分相似的作用,而且同樣是由專 用解釋器以行為單位解釋執行,這種文本形式更通用的稱謂是腳本語言。所以從某個程度分析,batch, unix shell, awk, basic, perl 等腳本語言都是一樣的,只不過應用的範圍和解釋的平臺各有不同而已。甚至有些應用程式仍然沿用批次處理這一稱呼,而其內容和副檔名與dos的批次處理卻又 完全不同。
===================================
首先批次檔案是一個文字檔案,這個檔的每一行都是一條DOS命令(大部分時候就好象我們在DOS提示符下執行的命令行一樣),你可以使用DOS下的Edit或者Windows的記事本(notepad)等任何文字檔案編輯工具創建和修改批次檔案。
==== 注 ===================
批 次檔案中完全可以使用非dos命令,甚至可以使用不具有可執行特性的普通資料性檔,這緣於windows系統這個新型解釋平臺的涉入,使得批次處理的應用 越來越"邊緣化"。所以我們討論的批次處理應該限定在dos環境或者命令行環境中,否則很多觀念和設定都需要做比較大的變動。
========================
其 次,批次檔案是一種簡單的程式,可以通過條件語句(if)和流程控制語句(goto)來控制命令執行的流程,在批次處理中也可以使用迴圈語句(for)來 迴圈執行一條命令。當然,批次檔案的編程能力與C語言等編程語句比起來是十分有限的,也是十分不規範的。批次處理的程式語句就是一條條的DOS命令(包括 內部命令和外部命令),而批次處理的能力主要取決於你所使用的命令。
==== 注 ==================
批 次檔案(batch file)也可以稱之為批次處理程式(batch program),這一點與編譯型語言有所不同,就c語言來說,副檔名為c或者cpp的檔可以稱之為c語言檔或者c語言源代碼,但只有編譯連接後的exe 檔才可以稱之為c語言程式。因為批次檔案本身既具有文本的可讀性,又具有程式的可執行性,這些稱謂的界限是比較模糊的。
===========================
第 三,每個編寫好的批次檔案都相當於一個DOS的外部命令,你可以把它所在的目錄放到你的DOS搜索路徑(path)中來使得它可以在任意位置執行。一個良 好的習慣是在硬碟上建立一個bat或者batch目錄(例如C:\BATCH),然後將所有你編寫的批次檔案放到該目錄中,這樣只要在path中設定上 c:\batch,你就可以在任意位置執行所有你編寫的批次處理程式。
==== 注 =====
純以dos系統而 言,可執行程式大約可以細分為五類,依照執行優先順序由高到低排列分別是:DOSKEY巨集命令(預先駐留記憶體),COMMAND.COM中的內部命令 (根據記憶體的環境隨時進駐記憶體),以com為副檔名的可執行程式(由command.com 直接載入記憶體),以exe位元副檔名的可執行程式(由command.com 重定位後載入記憶體),以bat位元副檔名的批次處理程式(由command.com 解釋分析,根據其內容按優先順序順序調用第2,3,4,5種可執行程式,分析一行,執行一行,檔本身不載入記憶體)
============
第 四,在DOS和Win9x/Me系統下,C:盤根目錄下的AUTOEXEC.BAT批次檔案是自動執行批次檔案,每次系統啟動時會自動執行該檔,你可以將 系統每次啟動時都要執行的命令放入該檔中,例如設定搜索路徑,調入滑鼠驅動和磁片緩存,設定系統環境變數等。下麵是一個執行於Windows 98下的autoexec.bat的示例:
@ECHO OFF
PATH C:\WINDOWS;C:\WINDOWS\COMMAND;C:\UCDOS;C:\DOSTools;
C:\SYSTOOLS;C:\WINTOOLS;C:\BATCH
LH SMARTDRV.EXE /X
LH DOSKEY.COM /insert
LH CTMOUSE.EXE
SET TEMP=D:\TEMP
SET TMP=D:\TEMP
==== 注 =====
AUTOEXEC.BAT為DOS系統的自動執行批次檔案,由COMMAND.COM啟動時解釋執行;
而 在Win9x環境中,不僅增加支持了 DOSSTART.BAT, WINSTART.BAT 等許多其他自動執行的批次檔案,對AUTOEXEC.BAT 也增加了 .DOS .W40 .BAK .OLD .PWS 等許多變體以適應複雜的環境和多變的需求。
==== willsort 編注 =============
以下關於命令的 分類,有很多值得推敲的地方。常用命令中的@本不是命令,而dir、copy等也很常用的命令卻沒有列入, 而特殊命令中所有命令對我來說都是常用命令。建議將批次處理所引用的命令分為內部命令、外部命令、第三方程式三類。而內部命令和外部命令中別有一類是專用 於或常用於批次處理中的命令可稱之為"批次處理命令"。
以下摘錄MS-DOS 6.22 幫助文檔中關於"批次處理命令"的文字,當然,其中有些概念和定義已經有些落後了。
批次處理命令
批次檔案或批次處理程式是一個包含若干MS-DOS命令的正文檔,副檔名為.BAT。當在命令提示符下敲入批次處理程式的名稱時,MS-DOS成組執行此批次處理程式中的命令。
任何在命令提示符下可使用的命令都可用在批次處理程式中。此外,下面MS-DOS命令是專門在批次處理程式中使用的。
==========
常用命令
echo、@、call、pause、rem(小技巧:用::代替rem)是批次檔案最常用的幾個命令,我們就從他們開始學起。
==== 注 ===========
首先, @ 不是一個命令, 而是DOS 批次處理的一個特殊標記符, 僅用於遮罩命令行回顯. 下面是DOS命令行或批次處理中可能會見到的一些特殊標記符:
CR(0D) 命令行結束符
Escape(1B) ANSI轉義字元引導符
Space(20) 常用的參數界定符
Tab(09) ; = 不常用的參數界定符
+ COPY命令文件連接符
* ? 文件通配符
"" 字串界定符
| 命令管道符
< > >> 文件重定向符
@ 命令行回顯遮罩符
/ 參數開關引導符
: 批次處理標籤引導符
% 批次處理變數引導符
其次, :: 確實可以起到rem 的注釋作用, 而且更簡潔有效; 但有兩點需要注意:
第一, 除了 :: 之外, 任何以 :開頭的字元行, 在批次處理中都被視作標號, 而直接忽略其後的所有內容, 只是為了與正常的標號相區別, 建議使用 goto 所無法識別的標號, 即在 :後緊跟一個非字母數位元的一個特殊符號.
第 二, 與rem 不同的是, ::後的字元行在執行時不會回顯, 無論是否用echo on打開命令行回顯狀態, 因為命令解釋器不認為他是一個有效的命令行, 就此點來看, rem 在某些場合下將比 :: 更為適用; 另外, rem 可以用於 config.sys 文件中.
=====================
echo 表示顯示此命令後的字元
echo off 表示在此語句後所有執行的命令都不顯示命令行本身
@與echo off相象,但它是加在每個命令行的最前面,表示執行時不顯示這一行的命令行(只能影響當前行)。
call 調用另一個批次檔案(如果不用call而直接調用別的批次檔案,那麼執行完那個批次檔案後將無法返回當前檔並執行當前檔的後續命令)。
pause 執行此句會暫停批次處理的執行並在螢幕上顯示Press any key to continue...的提示,等待用戶按任意鍵後繼續
rem 表示此命令後的字元為解釋行(注釋),不執行,只是給自己今後參考用的(相當於程式中的注釋)。
==== 注 =====
此處的描述較為混亂, 不如直接引用個命令的命令行幫助更為條理
-------------------------
ECHO
當程式執行時,顯示或隱藏批次處理程式中的正文。也可用於允許或禁止命令的回顯。
在執行批次處理程式時,MS-DOS一般在螢幕上顯示(回顯)批次處理程式中的命令。
使用ECHO命令可關閉此功能。
語法
ECHO [ON|OFF]
若要用echo命令顯示一條命令,可用下述語法:
echo [message]
參數
ON|OFF
指定是否允許命令的回顯。若要顯示當前的ECHO的設定,可使用不帶參數的ECHO
命令。
message
指定讓MS-DOS在螢幕上顯示的正文。
-------------------
CALL
從一個批次處理程式中調用另一個批次處理程式,而不會引起第一個批次處理的中止。
語法
CALL [drive:][path]filename [batch-parameters]
參數
[drive:][path]filename
指定要調用的批次處理程式的名字及其存放處。檔案名必須用.BAT作副檔名。
batch-parameters
指定批次處理程式所需的命令行資訊。
-------------------------------
PAUSE
暫停批次處理程式的執行並顯示一條消息,提示用戶按任意鍵繼續執行。只能在批處
理程式中使用該命令。
語法
PAUSE
REM
在批次檔案或CONFIG.SYS中加入注解。也可用REM命令來遮罩命令(在CONFIG.SYS
中也可以用分號 ; 代替REM命令,但在批次檔案中則不能替代)。
語法
REM [string]
參數
string
指定要遮罩的命令或要包含的注解。
=======================
例1:用edit編輯a.bat檔,輸入下列內容後存檔為c:\a.bat,執行該批次檔案後可實現:將根目錄中所有檔寫入 a.txt中,啟動UCDOS,進入WPS等功能。
批次檔案的內容為: 命令注釋:
@echo off 不顯示後續命令行及當前命令行
dir c:\*.* >a.txt 將c盤文件列表寫入a.txt
call c:\ucdos\ucdos.bat 調用ucdos
echo 你好 顯示"你好"
pause 暫停,等待按鍵繼續
rem 準備執行wps 注釋:準備執行wps
cd ucdos 進入ucdos目錄
wps 執行wps
批次檔案的參數
批次檔案還可以像C語言的函數一樣使用參數(相當於DOS命令的命令行參數),這需要用到一個參數表示符"%"。
%[1-9]表示參數,參數是指在執行批次檔案時在檔案名後加的以空格(或者Tab)分隔的字串。變數可以從%0到%9,%0表示批次處理命令本身,其他參數字串用%1到%9順序表示。
例2:C:根目錄下有一批次檔案名為f.bat,內容為:
@echo off
format %1
如果執行C:\>f a:
那麼在執行f.bat時,%1就表示a:,這樣format %1就相當於format a:,於是上面的命令執行時實際執行的是format a:
例3:C:根目錄下一批次檔案名為t.bat,內容為:
@echo off
type %1
type %2
那麼執行C:\>t a.txt b.txt
%1 : 表示a.txt
%2 : 表示b.txt
於是上面的命令將順序地顯示a.txt和b.txt檔的內容。
==== 注 ===============
參 數在批次處理中也作為變數處理, 所以同樣使用百分號作為引導符, 其後跟0-9中的一個數字構成參數引用符. 引用符和參數之間 (例如上文中的 %1 與 a: ) 的關係類似於變數指標與變數值的關係. 當我們要引用第十一個或更多個參數時, 就必須移動DOS 的參數起始指標. shift 命令正充當了這個移動指標的角色, 它將參數的起始指標移動到下一個參數, 類似C 語言中的指標操作. 圖示如下:
初始狀態, cmd 為命令名, 可以用 %0 引用
cmd arg1 arg2 arg3 arg4 arg5 arg6 arg7 arg8 arg9 arg10
^ ^ ^ ^ ^ ^ ^ ^ ^ ^
| | | | | | | | | |
%0 %1 %2 %3 %4 %5 %6 %7 %8 %9
經過1次shift後, cmd 將無法被引用
cmd arg1 arg2 arg3 arg4 arg5 arg6 arg7 arg8 arg9 arg10
^ ^ ^ ^ ^ ^ ^ ^ ^ ^
| | | | | | | | | |
%0 %1 %2 %3 %4 %5 %6 %7 %8 %9
經過2次shift後, arg1也被廢棄, %9指向為空, 沒有引用意義
cmd arg1 arg2 arg3 arg4 arg5 arg6 arg7 arg8 arg9 arg10
^ ^ ^ ^ ^ ^ ^ ^ ^
| | | | | | | | |
%0 %1 %2 %3 %4 %5 %6 %7 %8
遺憾的是, win9x 和DOS下均不支援 shift 的逆操作. 只有在 nt 內核命令行環境下, shift 才支援 /n 參數, 可以以第一參數為基準返複移動起始指標.
=================
特殊命令
if goto choice for是批次檔案中比較高級的命令,如果這幾個你用得很熟練,你就是批次檔案的專家啦。
一、if 是條件語句,用來判斷是否符合規定的條件,從而決定執行不同的命令。 有三種格式:
1、if [not] "參數" == "字串" 待執行的命令
參數如果等於(not表示不等,下同)指定的字串,則條件成立,執行命令,否則執行下一句。
例:if "%1"=="a" format a:
====
if 的命令行幫助中關於此點的描述為:
IF [NOT] string1==string2 command
在此有以下幾點需要注意:
1. 包含字串的雙引號不是語法所必須的, 而只是習慣上使用的一種"防空"字元
2. string1 未必是參數, 它也可以是環境變數, 迴圈變數以及其他字串常量或變數
3. command 不是語法所必須的, string2 後跟一個空格就可以構成一個有效的命令行
=============================
2、if [not] exist [路徑\]檔案名 待執行的命令
如果有指定的檔,則條件成立,執行命令,否則執行下一句。
如: if exist c:\config.sys type c:\config.sys
表示如果存在c:\config.sys檔,則顯示它的內容。
****** 注 ********
也可以使用以下的用法:
if exist command
device 是指DOS系統中已載入的設備, 在win98下通常有:
AUX, PRN, CON, NUL
COM1, COM2, COM3, COM4
LPT1, LPT2, LPT3, LPT4
XMSXXXX0, EMMXXXX0
A: B: C: ...,
CLOCK$, CONFIG$, DblBuff$, IFS$HLP$
具體的內容會因硬軟體環境的不同而略有差異, 使用這些設備名稱時, 需要保證以下三點:
1. 該設備確實存在(由軟體虛擬的設備除外)
2. 該設備驅動程式已載入(aux, prn等標準設備由系統缺省定義)
3. 該設備已準備好(主要是指a: b: ..., com1..., lpt1...等)
可通過命令 mem/d | find "device" /i 來檢閱你的系統中所載入的設備
另 外, 在DOS系統中, 設備也被認為是一種特殊的檔, 而檔也可以稱作字元設備; 因為設備(device)與檔都是使用控制碼(handle)來管理的, 控制碼就是名字, 類似於檔案名, 只不過控制碼不是應用於磁片管理, 而是應用於記憶體管理而已, 所謂設備載入也即指在記憶體中為其分配可引用的控制碼.
==================================
3、if errorlevel <數位> 待執行的命令
很 多DOS程式在執行結束後會返回一個數位值用來表示程式執行的結果(或者狀態),通過if errorlevel命令可以判斷程式的返回值,根據不同的返回值來決定執行不同的命令(返回值必須按照從大到小的順序排列)。如果返回值等於指定的數 字,則條件成立,執行命令,否則執行下一句。
如if errorlevel 2 goto x2
==== 注 ===========
返回值從大到小的順序排列不是必須的, 而只是執行命令為 goto 時的習慣用法, 當使用 set 作為執行命令時, 通常會從小到大順序排列, 比如需將返回碼置入環境變數, 就需使用以下的順序形式:
if errorlevel 1 set el=1
if errorlevel 2 set el=2
if errorlevel 3 set el=3
if errorlevel 4 set el=4
if errorlevel 5 set el=5
...
當然, 也可以使用以下迴圈來替代, 原理是一致的:
for %%e in (1 2 3 4 5 6 7 8...) do if errorlevel %%e set el=%%e
更高效簡潔的用法, 可以參考我寫的另一篇關於獲取 errorlevel 的文章
出 現此種現象的原因是, if errorlevel 比較返回碼的判斷條件並非等於, 而是大於等於. 由於 goto 的跳轉特性, 由小到大排序會導致在較小的返回碼處就跳出; 而由於 set命令的 "重複" 賦值特性, 由大到小排序會導致較小的返回碼 "覆蓋" 較大的返回碼.
另外, 雖然 if errorlevel=<數字> command 也是有效的命令行, 但也只是 command.com 解釋命令行時將 = 作為命令行切分符而忽略掉罷了
===========================
二、goto 批次檔案執行到這裏將跳到goto所指定的標號(標號即label,標號用:後跟標準字串來定義)處,goto語句一般與if配合使用,根據不同的條件來執行不同的命令組。
如:
goto end
:end
echo this is the end
標號用":字串"來定義,標號所在行不被執行。
==== willsort 編注
label 常被譯為 "標籤" , 但是這並不具有廣泛的約定性.
goto 與 : 聯用可實現執行中途的跳轉, 再結合 if 可實現執行過程的條件分支, 多個 if 即可實現命令的分組, 類似 C 中 switch case 結構或者 Basic 中的 select case 結構, 大規模且結構化的命令分組即可實現高階語言中的函數功能. 以下是批次處理和C/Basic在語法結構上的對照:
Batch C / Basic
goto&: goto&:
goto&:&if if{}&else{} / if&elseif&endif
goto&:&if... switch&case / select case
goto&:&if&set&envar... function() / function(),sub()
==================================
三、choice 使用此命令可以讓用戶輸入一個字元(用於選擇),從而根據用戶的選擇返回不同的errorlevel,然後於if errorlevel配合,根據用戶的選擇執行不同的命令。
"BAT批次檔案語法(上)"
副檔名是bat(在nt/2000/xp/2003下也可以是cmd)的檔就是批次檔案。
==== 注 =======================================
.bat是dos下的批次檔案
.cmd是nt內核命令行環境的另一種批次檔案
從 更廣義的角度來看,unix的shell腳本以及其他作業系統甚至應用程式中由外殼進行解釋執行的文本,都具有與批次檔案十分相似的作用,而且同樣是由專 用解釋器以行為單位解釋執行,這種文本形式更通用的稱謂是腳本語言。所以從某個程度分析,batch, unix shell, awk, basic, perl 等腳本語言都是一樣的,只不過應用的範圍和解釋的平臺各有不同而已。甚至有些應用程式仍然沿用批次處理這一稱呼,而其內容和副檔名與dos的批次處理卻又 完全不同。
===================================
首先批次檔案是一個文字檔案,這個檔的每一行都是一條DOS命令(大部分時候就好象我們在DOS提示符下執行的命令行一樣),你可以使用DOS下的Edit或者Windows的記事本(notepad)等任何文字檔案編輯工具創建和修改批次檔案。
==== 注 ===================
批 次檔案中完全可以使用非dos命令,甚至可以使用不具有可執行特性的普通資料性檔,這緣於windows系統這個新型解釋平臺的涉入,使得批次處理的應用 越來越"邊緣化"。所以我們討論的批次處理應該限定在dos環境或者命令行環境中,否則很多觀念和設定都需要做比較大的變動。
========================
其 次,批次檔案是一種簡單的程式,可以通過條件語句(if)和流程控制語句(goto)來控制命令執行的流程,在批次處理中也可以使用迴圈語句(for)來 迴圈執行一條命令。當然,批次檔案的編程能力與C語言等編程語句比起來是十分有限的,也是十分不規範的。批次處理的程式語句就是一條條的DOS命令(包括 內部命令和外部命令),而批次處理的能力主要取決於你所使用的命令。
==== 注 ==================
批 次檔案(batch file)也可以稱之為批次處理程式(batch program),這一點與編譯型語言有所不同,就c語言來說,副檔名為c或者cpp的檔可以稱之為c語言檔或者c語言源代碼,但只有編譯連接後的exe 檔才可以稱之為c語言程式。因為批次檔案本身既具有文本的可讀性,又具有程式的可執行性,這些稱謂的界限是比較模糊的。
===========================
第 三,每個編寫好的批次檔案都相當於一個DOS的外部命令,你可以把它所在的目錄放到你的DOS搜索路徑(path)中來使得它可以在任意位置執行。一個良 好的習慣是在硬碟上建立一個bat或者batch目錄(例如C:\BATCH),然後將所有你編寫的批次檔案放到該目錄中,這樣只要在path中設定上 c:\batch,你就可以在任意位置執行所有你編寫的批次處理程式。
==== 注 =====
純以dos系統而 言,可執行程式大約可以細分為五類,依照執行優先順序由高到低排列分別是:DOSKEY巨集命令(預先駐留記憶體),COMMAND.COM中的內部命令 (根據記憶體的環境隨時進駐記憶體),以com為副檔名的可執行程式(由command.com 直接載入記憶體),以exe位元副檔名的可執行程式(由command.com 重定位後載入記憶體),以bat位元副檔名的批次處理程式(由command.com 解釋分析,根據其內容按優先順序順序調用第2,3,4,5種可執行程式,分析一行,執行一行,檔本身不載入記憶體)
============
第 四,在DOS和Win9x/Me系統下,C:盤根目錄下的AUTOEXEC.BAT批次檔案是自動執行批次檔案,每次系統啟動時會自動執行該檔,你可以將 系統每次啟動時都要執行的命令放入該檔中,例如設定搜索路徑,調入滑鼠驅動和磁片緩存,設定系統環境變數等。下麵是一個執行於Windows 98下的autoexec.bat的示例:
@ECHO OFF
PATH C:\WINDOWS;C:\WINDOWS\COMMAND;C:\UCDOS;C:\DOSTools;
C:\SYSTOOLS;C:\WINTOOLS;C:\BATCH
LH SMARTDRV.EXE /X
LH DOSKEY.COM /insert
LH CTMOUSE.EXE
SET TEMP=D:\TEMP
SET TMP=D:\TEMP
==== 注 =====
AUTOEXEC.BAT為DOS系統的自動執行批次檔案,由COMMAND.COM啟動時解釋執行;
而 在Win9x環境中,不僅增加支持了 DOSSTART.BAT, WINSTART.BAT 等許多其他自動執行的批次檔案,對AUTOEXEC.BAT 也增加了 .DOS .W40 .BAK .OLD .PWS 等許多變體以適應複雜的環境和多變的需求。
==== willsort 編注 =============
以下關於命令的 分類,有很多值得推敲的地方。常用命令中的@本不是命令,而dir、copy等也很常用的命令卻沒有列入, 而特殊命令中所有命令對我來說都是常用命令。建議將批次處理所引用的命令分為內部命令、外部命令、第三方程式三類。而內部命令和外部命令中別有一類是專用 於或常用於批次處理中的命令可稱之為"批次處理命令"。
以下摘錄MS-DOS 6.22 幫助文檔中關於"批次處理命令"的文字,當然,其中有些概念和定義已經有些落後了。
批次處理命令
批次檔案或批次處理程式是一個包含若干MS-DOS命令的正文檔,副檔名為.BAT。當在命令提示符下敲入批次處理程式的名稱時,MS-DOS成組執行此批次處理程式中的命令。
任何在命令提示符下可使用的命令都可用在批次處理程式中。此外,下面MS-DOS命令是專門在批次處理程式中使用的。
==========
常用命令
echo、@、call、pause、rem(小技巧:用::代替rem)是批次檔案最常用的幾個命令,我們就從他們開始學起。
==== 注 ===========
首先, @ 不是一個命令, 而是DOS 批次處理的一個特殊標記符, 僅用於遮罩命令行回顯. 下面是DOS命令行或批次處理中可能會見到的一些特殊標記符:
CR(0D) 命令行結束符
Escape(1B) ANSI轉義字元引導符
Space(20) 常用的參數界定符
Tab(09) ; = 不常用的參數界定符
+ COPY命令文件連接符
* ? 文件通配符
"" 字串界定符
| 命令管道符
< > >> 文件重定向符
@ 命令行回顯遮罩符
/ 參數開關引導符
: 批次處理標籤引導符
% 批次處理變數引導符
其次, :: 確實可以起到rem 的注釋作用, 而且更簡潔有效; 但有兩點需要注意:
第一, 除了 :: 之外, 任何以 :開頭的字元行, 在批次處理中都被視作標號, 而直接忽略其後的所有內容, 只是為了與正常的標號相區別, 建議使用 goto 所無法識別的標號, 即在 :後緊跟一個非字母數位元的一個特殊符號.
第 二, 與rem 不同的是, ::後的字元行在執行時不會回顯, 無論是否用echo on打開命令行回顯狀態, 因為命令解釋器不認為他是一個有效的命令行, 就此點來看, rem 在某些場合下將比 :: 更為適用; 另外, rem 可以用於 config.sys 文件中.
=====================
echo 表示顯示此命令後的字元
echo off 表示在此語句後所有執行的命令都不顯示命令行本身
@與echo off相象,但它是加在每個命令行的最前面,表示執行時不顯示這一行的命令行(只能影響當前行)。
call 調用另一個批次檔案(如果不用call而直接調用別的批次檔案,那麼執行完那個批次檔案後將無法返回當前檔並執行當前檔的後續命令)。
pause 執行此句會暫停批次處理的執行並在螢幕上顯示Press any key to continue...的提示,等待用戶按任意鍵後繼續
rem 表示此命令後的字元為解釋行(注釋),不執行,只是給自己今後參考用的(相當於程式中的注釋)。
==== 注 =====
此處的描述較為混亂, 不如直接引用個命令的命令行幫助更為條理
-------------------------
ECHO
當程式執行時,顯示或隱藏批次處理程式中的正文。也可用於允許或禁止命令的回顯。
在執行批次處理程式時,MS-DOS一般在螢幕上顯示(回顯)批次處理程式中的命令。
使用ECHO命令可關閉此功能。
語法
ECHO [ON|OFF]
若要用echo命令顯示一條命令,可用下述語法:
echo [message]
參數
ON|OFF
指定是否允許命令的回顯。若要顯示當前的ECHO的設定,可使用不帶參數的ECHO
命令。
message
指定讓MS-DOS在螢幕上顯示的正文。
-------------------
CALL
從一個批次處理程式中調用另一個批次處理程式,而不會引起第一個批次處理的中止。
語法
CALL [drive:][path]filename [batch-parameters]
參數
[drive:][path]filename
指定要調用的批次處理程式的名字及其存放處。檔案名必須用.BAT作副檔名。
batch-parameters
指定批次處理程式所需的命令行資訊。
-------------------------------
PAUSE
暫停批次處理程式的執行並顯示一條消息,提示用戶按任意鍵繼續執行。只能在批處
理程式中使用該命令。
語法
PAUSE
REM
在批次檔案或CONFIG.SYS中加入注解。也可用REM命令來遮罩命令(在CONFIG.SYS
中也可以用分號 ; 代替REM命令,但在批次檔案中則不能替代)。
語法
REM [string]
參數
string
指定要遮罩的命令或要包含的注解。
=======================
例1:用edit編輯a.bat檔,輸入下列內容後存檔為c:\a.bat,執行該批次檔案後可實現:將根目錄中所有檔寫入 a.txt中,啟動UCDOS,進入WPS等功能。
批次檔案的內容為: 命令注釋:
@echo off 不顯示後續命令行及當前命令行
dir c:\*.* >a.txt 將c盤文件列表寫入a.txt
call c:\ucdos\ucdos.bat 調用ucdos
echo 你好 顯示"你好"
pause 暫停,等待按鍵繼續
rem 準備執行wps 注釋:準備執行wps
cd ucdos 進入ucdos目錄
wps 執行wps
批次檔案的參數
批次檔案還可以像C語言的函數一樣使用參數(相當於DOS命令的命令行參數),這需要用到一個參數表示符"%"。
%[1-9]表示參數,參數是指在執行批次檔案時在檔案名後加的以空格(或者Tab)分隔的字串。變數可以從%0到%9,%0表示批次處理命令本身,其他參數字串用%1到%9順序表示。
例2:C:根目錄下有一批次檔案名為f.bat,內容為:
@echo off
format %1
如果執行C:\>f a:
那麼在執行f.bat時,%1就表示a:,這樣format %1就相當於format a:,於是上面的命令執行時實際執行的是format a:
例3:C:根目錄下一批次檔案名為t.bat,內容為:
@echo off
type %1
type %2
那麼執行C:\>t a.txt b.txt
%1 : 表示a.txt
%2 : 表示b.txt
於是上面的命令將順序地顯示a.txt和b.txt檔的內容。
==== 注 ===============
參 數在批次處理中也作為變數處理, 所以同樣使用百分號作為引導符, 其後跟0-9中的一個數字構成參數引用符. 引用符和參數之間 (例如上文中的 %1 與 a: ) 的關係類似於變數指標與變數值的關係. 當我們要引用第十一個或更多個參數時, 就必須移動DOS 的參數起始指標. shift 命令正充當了這個移動指標的角色, 它將參數的起始指標移動到下一個參數, 類似C 語言中的指標操作. 圖示如下:
初始狀態, cmd 為命令名, 可以用 %0 引用
cmd arg1 arg2 arg3 arg4 arg5 arg6 arg7 arg8 arg9 arg10
^ ^ ^ ^ ^ ^ ^ ^ ^ ^
| | | | | | | | | |
%0 %1 %2 %3 %4 %5 %6 %7 %8 %9
經過1次shift後, cmd 將無法被引用
cmd arg1 arg2 arg3 arg4 arg5 arg6 arg7 arg8 arg9 arg10
^ ^ ^ ^ ^ ^ ^ ^ ^ ^
| | | | | | | | | |
%0 %1 %2 %3 %4 %5 %6 %7 %8 %9
經過2次shift後, arg1也被廢棄, %9指向為空, 沒有引用意義
cmd arg1 arg2 arg3 arg4 arg5 arg6 arg7 arg8 arg9 arg10
^ ^ ^ ^ ^ ^ ^ ^ ^
| | | | | | | | |
%0 %1 %2 %3 %4 %5 %6 %7 %8
遺憾的是, win9x 和DOS下均不支援 shift 的逆操作. 只有在 nt 內核命令行環境下, shift 才支援 /n 參數, 可以以第一參數為基準返複移動起始指標.
=================
特殊命令
if goto choice for是批次檔案中比較高級的命令,如果這幾個你用得很熟練,你就是批次檔案的專家啦。
一、if 是條件語句,用來判斷是否符合規定的條件,從而決定執行不同的命令。 有三種格式:
1、if [not] "參數" == "字串" 待執行的命令
參數如果等於(not表示不等,下同)指定的字串,則條件成立,執行命令,否則執行下一句。
例:if "%1"=="a" format a:
====
if 的命令行幫助中關於此點的描述為:
IF [NOT] string1==string2 command
在此有以下幾點需要注意:
1. 包含字串的雙引號不是語法所必須的, 而只是習慣上使用的一種"防空"字元
2. string1 未必是參數, 它也可以是環境變數, 迴圈變數以及其他字串常量或變數
3. command 不是語法所必須的, string2 後跟一個空格就可以構成一個有效的命令行
=============================
2、if [not] exist [路徑\]檔案名 待執行的命令
如果有指定的檔,則條件成立,執行命令,否則執行下一句。
如: if exist c:\config.sys type c:\config.sys
表示如果存在c:\config.sys檔,則顯示它的內容。
****** 注 ********
也可以使用以下的用法:
if exist command
device 是指DOS系統中已載入的設備, 在win98下通常有:
AUX, PRN, CON, NUL
COM1, COM2, COM3, COM4
LPT1, LPT2, LPT3, LPT4
XMSXXXX0, EMMXXXX0
A: B: C: ...,
CLOCK$, CONFIG$, DblBuff$, IFS$HLP$
具體的內容會因硬軟體環境的不同而略有差異, 使用這些設備名稱時, 需要保證以下三點:
1. 該設備確實存在(由軟體虛擬的設備除外)
2. 該設備驅動程式已載入(aux, prn等標準設備由系統缺省定義)
3. 該設備已準備好(主要是指a: b: ..., com1..., lpt1...等)
可通過命令 mem/d | find "device" /i 來檢閱你的系統中所載入的設備
另 外, 在DOS系統中, 設備也被認為是一種特殊的檔, 而檔也可以稱作字元設備; 因為設備(device)與檔都是使用控制碼(handle)來管理的, 控制碼就是名字, 類似於檔案名, 只不過控制碼不是應用於磁片管理, 而是應用於記憶體管理而已, 所謂設備載入也即指在記憶體中為其分配可引用的控制碼.
==================================
3、if errorlevel <數位> 待執行的命令
很 多DOS程式在執行結束後會返回一個數位值用來表示程式執行的結果(或者狀態),通過if errorlevel命令可以判斷程式的返回值,根據不同的返回值來決定執行不同的命令(返回值必須按照從大到小的順序排列)。如果返回值等於指定的數 字,則條件成立,執行命令,否則執行下一句。
如if errorlevel 2 goto x2
==== 注 ===========
返回值從大到小的順序排列不是必須的, 而只是執行命令為 goto 時的習慣用法, 當使用 set 作為執行命令時, 通常會從小到大順序排列, 比如需將返回碼置入環境變數, 就需使用以下的順序形式:
if errorlevel 1 set el=1
if errorlevel 2 set el=2
if errorlevel 3 set el=3
if errorlevel 4 set el=4
if errorlevel 5 set el=5
...
當然, 也可以使用以下迴圈來替代, 原理是一致的:
for %%e in (1 2 3 4 5 6 7 8...) do if errorlevel %%e set el=%%e
更高效簡潔的用法, 可以參考我寫的另一篇關於獲取 errorlevel 的文章
出 現此種現象的原因是, if errorlevel 比較返回碼的判斷條件並非等於, 而是大於等於. 由於 goto 的跳轉特性, 由小到大排序會導致在較小的返回碼處就跳出; 而由於 set命令的 "重複" 賦值特性, 由大到小排序會導致較小的返回碼 "覆蓋" 較大的返回碼.
另外, 雖然 if errorlevel=<數字> command 也是有效的命令行, 但也只是 command.com 解釋命令行時將 = 作為命令行切分符而忽略掉罷了
===========================
二、goto 批次檔案執行到這裏將跳到goto所指定的標號(標號即label,標號用:後跟標準字串來定義)處,goto語句一般與if配合使用,根據不同的條件來執行不同的命令組。
如:
goto end
:end
echo this is the end
標號用":字串"來定義,標號所在行不被執行。
==== willsort 編注
label 常被譯為 "標籤" , 但是這並不具有廣泛的約定性.
goto 與 : 聯用可實現執行中途的跳轉, 再結合 if 可實現執行過程的條件分支, 多個 if 即可實現命令的分組, 類似 C 中 switch case 結構或者 Basic 中的 select case 結構, 大規模且結構化的命令分組即可實現高階語言中的函數功能. 以下是批次處理和C/Basic在語法結構上的對照:
Batch C / Basic
goto&: goto&:
goto&:&if if{}&else{} / if&elseif&endif
goto&:&if... switch&case / select case
goto&:&if&set&envar... function() / function(),sub()
==================================
三、choice 使用此命令可以讓用戶輸入一個字元(用於選擇),從而根據用戶的選擇返回不同的errorlevel,然後於if errorlevel配合,根據用戶的選擇執行不同的命令。
Windows7停用與啟用各種不想用的功能 - 桌機與筆記型電腦 - PALMisLIFE 討論區
Windows7停用與啟用各種不想用的功能 - 桌機與筆記型電腦 - PALMisLIFE 討論區:
"Windows7停用與啟用各種不想用的功能"
@echo off
echo 停用 桌面小工具
dism /NoRestart /Quiet /Online /Disable-Feature /FeatureName:"WindowsGadgetPlatform"
echo 停用 遊樂場
dism /NoRestart /Quiet /Online /Disable-Feature /FeatureName:"InboxGames"
echo 停用 其他遊戲
dism /NoRestart /Quiet /Online /Disable-Feature /FeatureName:"More Games"
echo 停用 接龍
dism /NoRestart /Quiet /Online /Disable-Feature /FeatureName:"Solitaire"
echo 停用 連環新接龍
dism /NoRestart /Quiet /Online /Disable-Feature /FeatureName:"SpiderSolitaire"
echo 停用 傷心小棧
dism /NoRestart /Quiet /Online /Disable-Feature /FeatureName:"Hearts"
echo 停用 新接龍
dism /NoRestart /Quiet /Online /Disable-Feature /FeatureName:"FreeCell"
echo 停用 踩地雷
dism /NoRestart /Quiet /Online /Disable-Feature /FeatureName:"Minesweeper"
echo 停用 PurblePlace
dism /NoRestart /Quiet /Online /Disable-Feature /FeatureName:"PurblePlace"
echo 停用 西洋棋
dism /NoRestart /Quiet /Online /Disable-Feature /FeatureName:"Chess"
echo 停用 Shanghai
dism /NoRestart /Quiet /Online /Disable-Feature /FeatureName:"Shanghai"
echo 停用 網際網路遊戲
dism /NoRestart /Quiet /Online /Disable-Feature /FeatureName:"Internet Games"
echo 停用 媒體功能
dism /NoRestart /Quiet /Online /Disable-Feature /FeatureName:"MediaPlayback"
echo 停用 WindowsMediaPlayer
dism /NoRestart /Quiet /Online /Disable-Feature /FeatureName:"WindowsMediaPlayer"
echo 停用 MediaCenter功能
dism /NoRestart /Quiet /Online /Disable-Feature /FeatureName:"MediaCenter"
echo 停用 建立光碟功能
dism /NoRestart /Quiet /Online /Disable-Feature /FeatureName:"OpticalMediaDisc"
echo 停用 TabletPC功能
dism /NoRestart /Quiet /Online /Disable-Feature /FeatureName:"TabletPCOC"
echo 停用 遠端差異壓縮
dism /NoRestart /Quiet /Online /Disable-Feature /FeatureName:"MSRDC-Infrastructure"
echo 停用 搜尋功能與索引服務
dism /NoRestart /Quiet /Online /Disable-Feature /FeatureName:"SearchEngine-Client-Package"
echo 停用 XPS檢視器
dism /NoRestart /Quiet /Online /Disable-Feature /FeatureName:"Xps-Foundation-Xps-Viewer"
echo 停用 XPS服務
dism /NoRestart /Quiet /Online /Disable-Feature /FeatureName:"Printing-XPSServices-Features"
echo 完成!請按任意鍵結束。&pause>nul
"Windows7停用與啟用各種不想用的功能"
@echo off
echo 停用 桌面小工具
dism /NoRestart /Quiet /Online /Disable-Feature /FeatureName:"WindowsGadgetPlatform"
echo 停用 遊樂場
dism /NoRestart /Quiet /Online /Disable-Feature /FeatureName:"InboxGames"
echo 停用 其他遊戲
dism /NoRestart /Quiet /Online /Disable-Feature /FeatureName:"More Games"
echo 停用 接龍
dism /NoRestart /Quiet /Online /Disable-Feature /FeatureName:"Solitaire"
echo 停用 連環新接龍
dism /NoRestart /Quiet /Online /Disable-Feature /FeatureName:"SpiderSolitaire"
echo 停用 傷心小棧
dism /NoRestart /Quiet /Online /Disable-Feature /FeatureName:"Hearts"
echo 停用 新接龍
dism /NoRestart /Quiet /Online /Disable-Feature /FeatureName:"FreeCell"
echo 停用 踩地雷
dism /NoRestart /Quiet /Online /Disable-Feature /FeatureName:"Minesweeper"
echo 停用 PurblePlace
dism /NoRestart /Quiet /Online /Disable-Feature /FeatureName:"PurblePlace"
echo 停用 西洋棋
dism /NoRestart /Quiet /Online /Disable-Feature /FeatureName:"Chess"
echo 停用 Shanghai
dism /NoRestart /Quiet /Online /Disable-Feature /FeatureName:"Shanghai"
echo 停用 網際網路遊戲
dism /NoRestart /Quiet /Online /Disable-Feature /FeatureName:"Internet Games"
echo 停用 媒體功能
dism /NoRestart /Quiet /Online /Disable-Feature /FeatureName:"MediaPlayback"
echo 停用 WindowsMediaPlayer
dism /NoRestart /Quiet /Online /Disable-Feature /FeatureName:"WindowsMediaPlayer"
echo 停用 MediaCenter功能
dism /NoRestart /Quiet /Online /Disable-Feature /FeatureName:"MediaCenter"
echo 停用 建立光碟功能
dism /NoRestart /Quiet /Online /Disable-Feature /FeatureName:"OpticalMediaDisc"
echo 停用 TabletPC功能
dism /NoRestart /Quiet /Online /Disable-Feature /FeatureName:"TabletPCOC"
echo 停用 遠端差異壓縮
dism /NoRestart /Quiet /Online /Disable-Feature /FeatureName:"MSRDC-Infrastructure"
echo 停用 搜尋功能與索引服務
dism /NoRestart /Quiet /Online /Disable-Feature /FeatureName:"SearchEngine-Client-Package"
echo 停用 XPS檢視器
dism /NoRestart /Quiet /Online /Disable-Feature /FeatureName:"Xps-Foundation-Xps-Viewer"
echo 停用 XPS服務
dism /NoRestart /Quiet /Online /Disable-Feature /FeatureName:"Printing-XPSServices-Features"
echo 完成!請按任意鍵結束。&pause>nul
- @echo off
- echo 啟用 桌面小工具
- dism /NoRestart /Quiet /Online /Enable-Feature /FeatureName:"WindowsGadgetPlatform"
- echo 啟用 遊樂場
- dism /NoRestart /Quiet /Online /Enable-Feature /FeatureName:"InboxGames"
- echo 啟用 其他遊戲
- dism /NoRestart /Quiet /Online /Enable-Feature /FeatureName:"More Games"
- echo 啟用 接龍
- dism /NoRestart /Quiet /Online /Enable-Feature /FeatureName:"Solitaire"
- echo 啟用 連環新接龍
- dism /NoRestart /Quiet /Online /Enable-Feature /FeatureName:"SpiderSolitaire"
- echo 啟用 傷心小棧
- dism /NoRestart /Quiet /Online /Enable-Feature /FeatureName:"Hearts"
- echo 啟用 新接龍
- dism /NoRestart /Quiet /Online /Enable-Feature /FeatureName:"FreeCell"
- echo 啟用 踩地雷
- dism /NoRestart /Quiet /Online /Enable-Feature /FeatureName:"Minesweeper"
- echo 啟用 PurblePlace
- dism /NoRestart /Quiet /Online /Enable-Feature /FeatureName:"PurblePlace"
- echo 啟用 西洋棋
- dism /NoRestart /Quiet /Online /Enable-Feature /FeatureName:"Chess"
- echo 啟用 Shanghai
- dism /NoRestart /Quiet /Online /Enable-Feature /FeatureName:"Shanghai"
- echo 啟用 網際網路遊戲
- dism /NoRestart /Quiet /Online /Enable-Feature /FeatureName:"Internet Games"
- echo 啟用 媒體功能
- dism /NoRestart /Quiet /Online /Enable-Feature /FeatureName:"MediaPlayback"
- echo 啟用 WindowsMediaPlayer
- dism /NoRestart /Quiet /Online /Enable-Feature /FeatureName:"WindowsMediaPlayer"
- echo 啟用 MediaCenter功能
- dism /NoRestart /Quiet /Online /Enable-Feature /FeatureName:"MediaCenter"
- echo 啟用 建立光碟功能
- dism /NoRestart /Quiet /Online /Enable-Feature /FeatureName:"OpticalMediaDisc"
- echo 啟用 TabletPC功能
- dism /NoRestart /Quiet /Online /Enable-Feature /FeatureName:"TabletPCOC"
- echo 啟用 遠端差異壓縮
- dism /NoRestart /Quiet /Online /Enable-Feature /FeatureName:"MSRDC-Infrastructure"
- echo 啟用 搜尋功能與索引服務
- dism /NoRestart /Quiet /Online /Enable-Feature /FeatureName:"SearchEngine-Client-Package"
- echo 啟用 XPS檢視器
- dism /NoRestart /Quiet /Online /Enable-Feature /FeatureName:"Xps-Foundation-Xps-Viewer"
- echo 啟用 XPS服務
- dism /NoRestart /Quiet /Online /Enable-Feature /FeatureName:"Printing-XPSServices-Features"
- echo 完成!請按任意鍵結束。&pause>nul
Rundll32 使用inf 裝 driver
Rundll32 使用inf 裝 driver @ Ces't la vie :: Xuite日誌:
"Rundll32 使用inf 裝 driver
rundll32 呼叫setupapi就可以安裝或是反安裝驅動程式
rundll32.exe setupapi,InstallHinfSection DefaultInstall 132 .\setup.inf
rundll32.exe 執行檔
setupapi.dll 動態連結檔
InstallHinfSection function
VOID CALLBACK InstallHinfSection(
__in HWND hwnd,
__in HINSTANCE ModuleHandle,
__in PCTSTR CmdLineBuffer,
__in INT nCmdShow
);
Parameters
hwnd [in]
The parent window handle. Typically hwnd is Null.
ModuleHandle [in]
Reserved and should be Null.
CmdLineBuffer [in]
Pointer to buffer containing the command line. You should use a null-terminated string.
nCmdShow [in]
Reserved and should be zero.
Return Value
This function does not return a value.
數字132
Value Description
0 System provided INF.
128 Set the default path of the installation to the location of the INF. This is the typical setting.
+0 Never reboot the computer.
+1 Reboot the computer in all cases.
+2 Always ask the users if they want to reboot.
+3 Reboot the computer if necessary without asking user for permission.
+4 If a reboot of the computer is necessary, ask the user for permission before rebooting.
.\setup.inf
路徑加上inf檔名
安裝用 DefaultInstall
反安裝用 DefaultUninstall
當然inf需要依照格式編寫
http://msdn.microsoft.com/en-us/library/ms793586.aspx"
"Rundll32 使用inf 裝 driver
rundll32 呼叫setupapi就可以安裝或是反安裝驅動程式
rundll32.exe setupapi,InstallHinfSection DefaultInstall 132 .\setup.inf
rundll32.exe 執行檔
setupapi.dll 動態連結檔
InstallHinfSection function
VOID CALLBACK InstallHinfSection(
__in HWND hwnd,
__in HINSTANCE ModuleHandle,
__in PCTSTR CmdLineBuffer,
__in INT nCmdShow
);
Parameters
hwnd [in]
The parent window handle. Typically hwnd is Null.
ModuleHandle [in]
Reserved and should be Null.
CmdLineBuffer [in]
Pointer to buffer containing the command line. You should use a null-terminated string.
nCmdShow [in]
Reserved and should be zero.
Return Value
This function does not return a value.
數字132
Value Description
0 System provided INF.
128 Set the default path of the installation to the location of the INF. This is the typical setting.
+0 Never reboot the computer.
+1 Reboot the computer in all cases.
+2 Always ask the users if they want to reboot.
+3 Reboot the computer if necessary without asking user for permission.
+4 If a reboot of the computer is necessary, ask the user for permission before rebooting.
.\setup.inf
路徑加上inf檔名
安裝用 DefaultInstall
反安裝用 DefaultUninstall
當然inf需要依照格式編寫
http://msdn.microsoft.com/en-us/library/ms793586.aspx"
2010年2月11日 星期四
CMD指令大全
外幣是穩定投資的天堂_法意聯盟(請看投資目錄) - CMD指令大全:
"CMD指令大全
現階段(GUI)視窗圖示使用者介面幾乎不需要使用CMD指令,但有些指令還不錯用,可以還原電腦
DOS指令集工作列→開始→執行→輸入的指令
工作列→開始→執行→輸入的指令
系統還原
1.按(開始) => 按(關機) => 選(將電腦重新啟動在MS-DOS模式)
2.鍵入C:\WINDOWS>Scanreg/restore 按
3.進入左Microsoft Registry Checker
4.哪裡有Windows最近五日的紀錄 , 選定哪一天後再按
最基本,最常用的,測試物理網路的
ping 192.168.0.8 -t ,參數-t是等待用戶去中斷測試
查看DNS、IP、Mac等
A.Win98:winipcfg
B.Win2000以上:Ipconfig/all
網路信使
Net send 電腦名/IP * (廣播) 傳送內容,注意不能跨網段
net stop messenger 停止信使服務,也可以在面板-服務修改
net start messenger 開始信使服務
探測對方對方電腦名,所在的組、域及當前用戶名 (追捕的工作原理)
ping -a IP -t ,只顯示NetBios名
nbtstat -a 192.168.10.146 比較全的
netstat -a 顯示出你的電腦當前所開放的所有埠
netstat -s -e 比較詳細的顯示你的網路資料,包括TCP、UDP、ICMP 和 IP的統計等
探測arp綁定(動態和靜態)列表,顯示所有連接了我的電腦,顯示對方IP和MAC位址
arp -a
在代理伺服器端
捆綁IP和MAC位址,解決局域網內盜用IP!:
ARP -s 192.168.10.59 00 -50-ff-6c-08-75
解除網卡的IP與MAC位址的綁定:
arp -d 網卡IP
在網路鄰居上隱藏你的電腦
net config server /hidden:yes
net config server /hidden:no 則為開啟
幾個net命令
A.顯示當前工作組伺服器列表 net view,當不帶選項使用本命令時,
它就會顯示當前域或網路上的電腦上的列表。
比如:查看這個IP上的共用資源,就可以
C:\>net view 192.168.10.8
在 192.168.10.8 的共用資源
資源分享名 類型 用途 注釋
--------------------------------------
網站服務 Disk
命令成功完成。
路由跟蹤命令
A.tracert pop.pcpop.com
B.pathping pop.pcpop.com 除了顯示路由外,還提供325S的分析,計算丟失包的%
關於共用安全的幾個命令
A.查看你機器的共用資源 net share
B.手工刪除共用(可以編個bat檔,開機自運行,把共用都刪了!)
net share c$ /d
net share d$ /d
net share ipc$ /d
net share admin$ /d
注意$後有空格。
C.增加一個共用:
c:\net share mymovie=e:\downloads\movie /users:1
mymovie 共用成功。
同時限制鏈結用戶數為1人。
在DOS行下設置靜態IP
A.設置靜態IP
CMD
netsh
netsh>int
interface>ip
interface ip>set add '本地鏈結' static IP位址 mask gateway
B.查看IP設置
interface ip>show address
簡易基本指令(點'執行'直接輸入就好)
gpedit.msc-----群組原則
sndrec32-------錄音機
nslookup-------IP位址偵測器
explorer-------開啟檔案總管
logoff---------登出指令
tsshutdn-------60秒倒計時關機指令
lusrmgr.msc----本地機用戶和組
services.msc---本機服務設定
oobe/msoobe /a----檢查XP是否啟動
notepad--------開啟記事本
cleanmgr-------磁碟垃圾整理
net start messenger----開始信使服務
compmgmt.msc---電腦管理
net stop messenger-----停止信使服務
vconf-----------啟動 netmeeting
dvdplay--------DVD播放器
charmap--------啟動字元對應表
Kdiskmgmt.msc---磁牒管理實用程序
calc-----------啟動電子計算器
dfrg.msc-------磁碟重組工具
chkdsk.exe-----Chkdsk磁牒檢查
devmgmt.msc--- 裝置管理員
bFdrwtsn32------ 系統醫生
srononce -p ----15秒關機
dxdiag---------檢查DirectX資訊
regedt32-------註冊表編輯器
YMsconfig.exe---系統配置實用程序
rsop.msc-------群組原則結果集
mem.exe--------顯示記憶體使用情況
regedit.exe----註冊表
winchat--------XP自帶區域網路聊天
progman--------程序管理器
winmsd---------系統資訊
perfmon.msc----電腦效能監測程序
winver---------檢查Windows版本
sfc /scannow-----掃瞄錯誤並復原
taskmgr-----工作管理器(2000/xp/2003)
eventvwr.msc------------事件檢視器
secpol.msc----------------本機安全性設定
rsop.msc------------------原則的結果集
ntbackup----------------啟動制作備份還原嚮導
mstsc-----------遠端桌面
winver---------檢查Windows版本
wmimgmt.msc----開啟windows管理體系結構(WMI)
wupdmgr--------windows更新程序
wscript--------windows指令碼宿主設定
write----------寫字板
winmsd---------系統資訊
wiaacmgr-------掃瞄儀和照相機嚮導
winchat--------XP原有的區域網路聊天
mem.exe--------顯示記憶體使用情況
sconfig.exe---系統配置實用程序
mplayer2-------簡易widnows media player
mspaint--------畫圖板
mstsc----------遠端桌面連接
mplayer2-------媒體播放機
magnify--------放大鏡實用程序
mmc------------開啟控制台
mobsync--------同步指令
dxdiag---------檢查DirectX資訊
drwtsn32------ 系統醫生
devmgmt.msc--- 裝置管理員
dfrg.msc-------磁碟重組程式
diskmgmt.msc---磁牒管理實用程序
dcomcnfg-------開啟系統元件服務
ddeshare-------開啟DDE共享設定
dvdplay--------DVD播放器
net stop messenger-----停止信使服務
net start messenger----開始信使服務
notepad--------開啟記事本
nslookup-------網路管理的工具嚮導
ntbackup-------系統制作備份和還原
narrator-------螢幕「講述人」
ntmsmgr.msc----移動存儲管理器
ntmsoprq.msc---移動存儲管理員操作請求
netstat -an----(TC)指令檢查連接
Usyncapp--------新增一個公文包
sysedit--------系統配置編輯器
sigverif-------文件簽名驗證程序
psndrec32-------錄音機
shrpubw--------新增共用資料夾
secpol.msc-----本機安全原則
syskey---------系統加密,一旦加密就不能解開,保護windows xp系統的雙重密碼
services.msc---本機服務設定
Sndvol32-------音量控制程序
sfc.exe--------系統檔案檢查器
sfc /scannow---windows文件保護
tsshutdn-------60秒倒計時關機指令
tourstart------xp簡介(安裝完成後出現的漫遊xp程序)
taskmgr--------工作管理器
eventvwr-------事件檢視器
eudcedit-------造字程序
explorer-------開啟檔案總管
lpackager-------對像包裝程序
perfmon.msc----電腦效能監測程序l
progman--------程序管理器
regedit.exe----註冊表
rsop.msc-------群組原則結果集
rononce -p ----15秒關機
regsvr32 /u *.dll----停止dll文件執行
regsvr32 /u zipfldr.dll------取消ZIP支持
cmd.exe--------CMD命令提示字元
chkdsk.exe-----Chkdsk磁牒檢查
certmgr.msc----證書管理實用程序
calc-----------啟動計算器
charmap--------啟動字元對應表
cliconfg-------SQL SERVER 客戶端網路實用程序
Clipbrd--------剪貼板檢視器
conf-----------啟動netmeeting
compmgmt.msc---電腦管理
ciadv.msc------索引服務程序
osk------------開啟螢幕小鍵盤
odbcad32-------ODBC資料來源管理器
oobe/msoobe /a----檢查XP是否啟動
lusrmgr.msc----本地機用戶和組
iexpress-------木馬元件服務工具,系統原有的
fsmgmt.msc-----共用資料夾管理器
utilman--------協助工具管理器"
"CMD指令大全
現階段(GUI)視窗圖示使用者介面幾乎不需要使用CMD指令,但有些指令還不錯用,可以還原電腦
DOS指令集工作列→開始→執行→輸入的指令
工作列→開始→執行→輸入的指令
系統還原
1.按(開始) => 按(關機) => 選(將電腦重新啟動在MS-DOS模式)
2.鍵入C:\WINDOWS>Scanreg/restore 按
3.進入左Microsoft Registry Checker
4.哪裡有Windows最近五日的紀錄 , 選定哪一天後再按
最基本,最常用的,測試物理網路的
ping 192.168.0.8 -t ,參數-t是等待用戶去中斷測試
查看DNS、IP、Mac等
A.Win98:winipcfg
B.Win2000以上:Ipconfig/all
網路信使
Net send 電腦名/IP * (廣播) 傳送內容,注意不能跨網段
net stop messenger 停止信使服務,也可以在面板-服務修改
net start messenger 開始信使服務
探測對方對方電腦名,所在的組、域及當前用戶名 (追捕的工作原理)
ping -a IP -t ,只顯示NetBios名
nbtstat -a 192.168.10.146 比較全的
netstat -a 顯示出你的電腦當前所開放的所有埠
netstat -s -e 比較詳細的顯示你的網路資料,包括TCP、UDP、ICMP 和 IP的統計等
探測arp綁定(動態和靜態)列表,顯示所有連接了我的電腦,顯示對方IP和MAC位址
arp -a
在代理伺服器端
捆綁IP和MAC位址,解決局域網內盜用IP!:
ARP -s 192.168.10.59 00 -50-ff-6c-08-75
解除網卡的IP與MAC位址的綁定:
arp -d 網卡IP
在網路鄰居上隱藏你的電腦
net config server /hidden:yes
net config server /hidden:no 則為開啟
幾個net命令
A.顯示當前工作組伺服器列表 net view,當不帶選項使用本命令時,
它就會顯示當前域或網路上的電腦上的列表。
比如:查看這個IP上的共用資源,就可以
C:\>net view 192.168.10.8
在 192.168.10.8 的共用資源
資源分享名 類型 用途 注釋
--------------------------------------
網站服務 Disk
命令成功完成。
路由跟蹤命令
A.tracert pop.pcpop.com
B.pathping pop.pcpop.com 除了顯示路由外,還提供325S的分析,計算丟失包的%
關於共用安全的幾個命令
A.查看你機器的共用資源 net share
B.手工刪除共用(可以編個bat檔,開機自運行,把共用都刪了!)
net share c$ /d
net share d$ /d
net share ipc$ /d
net share admin$ /d
注意$後有空格。
C.增加一個共用:
c:\net share mymovie=e:\downloads\movie /users:1
mymovie 共用成功。
同時限制鏈結用戶數為1人。
在DOS行下設置靜態IP
A.設置靜態IP
CMD
netsh
netsh>int
interface>ip
interface ip>set add '本地鏈結' static IP位址 mask gateway
B.查看IP設置
interface ip>show address
簡易基本指令(點'執行'直接輸入就好)
gpedit.msc-----群組原則
sndrec32-------錄音機
nslookup-------IP位址偵測器
explorer-------開啟檔案總管
logoff---------登出指令
tsshutdn-------60秒倒計時關機指令
lusrmgr.msc----本地機用戶和組
services.msc---本機服務設定
oobe/msoobe /a----檢查XP是否啟動
notepad--------開啟記事本
cleanmgr-------磁碟垃圾整理
net start messenger----開始信使服務
compmgmt.msc---電腦管理
net stop messenger-----停止信使服務
vconf-----------啟動 netmeeting
dvdplay--------DVD播放器
charmap--------啟動字元對應表
Kdiskmgmt.msc---磁牒管理實用程序
calc-----------啟動電子計算器
dfrg.msc-------磁碟重組工具
chkdsk.exe-----Chkdsk磁牒檢查
devmgmt.msc--- 裝置管理員
bFdrwtsn32------ 系統醫生
srononce -p ----15秒關機
dxdiag---------檢查DirectX資訊
regedt32-------註冊表編輯器
YMsconfig.exe---系統配置實用程序
rsop.msc-------群組原則結果集
mem.exe--------顯示記憶體使用情況
regedit.exe----註冊表
winchat--------XP自帶區域網路聊天
progman--------程序管理器
winmsd---------系統資訊
perfmon.msc----電腦效能監測程序
winver---------檢查Windows版本
sfc /scannow-----掃瞄錯誤並復原
taskmgr-----工作管理器(2000/xp/2003)
eventvwr.msc------------事件檢視器
secpol.msc----------------本機安全性設定
rsop.msc------------------原則的結果集
ntbackup----------------啟動制作備份還原嚮導
mstsc-----------遠端桌面
winver---------檢查Windows版本
wmimgmt.msc----開啟windows管理體系結構(WMI)
wupdmgr--------windows更新程序
wscript--------windows指令碼宿主設定
write----------寫字板
winmsd---------系統資訊
wiaacmgr-------掃瞄儀和照相機嚮導
winchat--------XP原有的區域網路聊天
mem.exe--------顯示記憶體使用情況
sconfig.exe---系統配置實用程序
mplayer2-------簡易widnows media player
mspaint--------畫圖板
mstsc----------遠端桌面連接
mplayer2-------媒體播放機
magnify--------放大鏡實用程序
mmc------------開啟控制台
mobsync--------同步指令
dxdiag---------檢查DirectX資訊
drwtsn32------ 系統醫生
devmgmt.msc--- 裝置管理員
dfrg.msc-------磁碟重組程式
diskmgmt.msc---磁牒管理實用程序
dcomcnfg-------開啟系統元件服務
ddeshare-------開啟DDE共享設定
dvdplay--------DVD播放器
net stop messenger-----停止信使服務
net start messenger----開始信使服務
notepad--------開啟記事本
nslookup-------網路管理的工具嚮導
ntbackup-------系統制作備份和還原
narrator-------螢幕「講述人」
ntmsmgr.msc----移動存儲管理器
ntmsoprq.msc---移動存儲管理員操作請求
netstat -an----(TC)指令檢查連接
Usyncapp--------新增一個公文包
sysedit--------系統配置編輯器
sigverif-------文件簽名驗證程序
psndrec32-------錄音機
shrpubw--------新增共用資料夾
secpol.msc-----本機安全原則
syskey---------系統加密,一旦加密就不能解開,保護windows xp系統的雙重密碼
services.msc---本機服務設定
Sndvol32-------音量控制程序
sfc.exe--------系統檔案檢查器
sfc /scannow---windows文件保護
tsshutdn-------60秒倒計時關機指令
tourstart------xp簡介(安裝完成後出現的漫遊xp程序)
taskmgr--------工作管理器
eventvwr-------事件檢視器
eudcedit-------造字程序
explorer-------開啟檔案總管
lpackager-------對像包裝程序
perfmon.msc----電腦效能監測程序l
progman--------程序管理器
regedit.exe----註冊表
rsop.msc-------群組原則結果集
rononce -p ----15秒關機
regsvr32 /u *.dll----停止dll文件執行
regsvr32 /u zipfldr.dll------取消ZIP支持
cmd.exe--------CMD命令提示字元
chkdsk.exe-----Chkdsk磁牒檢查
certmgr.msc----證書管理實用程序
calc-----------啟動計算器
charmap--------啟動字元對應表
cliconfg-------SQL SERVER 客戶端網路實用程序
Clipbrd--------剪貼板檢視器
conf-----------啟動netmeeting
compmgmt.msc---電腦管理
ciadv.msc------索引服務程序
osk------------開啟螢幕小鍵盤
odbcad32-------ODBC資料來源管理器
oobe/msoobe /a----檢查XP是否啟動
lusrmgr.msc----本地機用戶和組
iexpress-------木馬元件服務工具,系統原有的
fsmgmt.msc-----共用資料夾管理器
utilman--------協助工具管理器"
2010年2月10日 星期三
Huge list of Windows 7 Shell Commands | OS Attack
Huge list of Windows 7 Shell Commands | OS Attack: "
Shell commands are incredibly useful when creating shortcuts or quickly accessing hard to get to locations. They can be used to pin shortcuts to the Taskbar or just to make your life easier. For those that are preceded by “Shell:” when using them in shortcuts you need to add “explorer.exe” in front of them. It should then look like this: explorer.exe shell:Personal
Windows 7 Only
shell:Libraries
shell:MusicLibrary
shell:VideosLibrary
shell:OtherUsersFolder
shell:Device Metadata Store
shell:PublicSuggestedLocations
shell:DocumentsLibrary
shell:User Pinned
shell:UsersLibrariesFolder
shell:PicturesLibrary
shell:ImplicitAppShortcuts
shell:Ringtones
shell:CommonRingtones
Windows Vista & 7
shell:Common Programs
shell:GameTasks
shell:UserProfiles
shell:MyComputerFolder
shell:SyncSetupFolder
shell:DpapiKeys
shell:SamplePlaylists
shell:Favorites
shell:My Video
shell:SearchHomeFolder
shell:System
shell:CommonVideo
shell:SyncResultsFolder
shell:LocalizedResourcesDir
shell:Cookies
shell:Original Images
shell:CommonMusic
shell:My Pictures
shell:Cache
shell:Downloads
shell:CommonDownloads
shell:AppData
shell:SyncCenterFolder
shell:My Music
shell:ConflictFolder
shell:SavedGames
shell:InternetFolder
shell:Quick Launch
shell:SystemCertificates
shell:Contacts
shell:TreePropertiesFolder
shell:Profile
shell:Start Menu
shell:Common AppData
shell:PhotoAlbums
shell:ConnectionsFolder
shell:Administrative Tools
shell:PrintersFolder
shell:Default Gadgets
shell:ProgramFilesX86
shell:Searches
shell:Common Startup
shell:ControlPanelFolder
shell:SampleVideos
shell:SendTo
shell:ResourceDir
shell:ProgramFiles
shell:CredentialManager
shell:PrintHood
shell:MAPIFolder
shell:CD Burning
shell:AppUpdatesFolder
shell:Common Start Menu
shell:LocalAppDataLow
shell:Templates
shell:Gadgets
shell:Programs
shell:Recent
shell:SampleMusic
shell:Desktop
shell:CommonPictures
shell:RecycleBinFolder
shell:CryptoKeys
shell:Common Templates
shell:Startup
shell:Links
shell:OEM Links
shell:SamplePictures
shell:Common Desktop
shell:NetHood
shell:Games
shell:Common Administrative Tools
shell:NetworkPlacesFolder
shell:SystemX86
shell:History
shell:AddNewProgramsFolder
shell:Playlists
shell:ProgramFilesCommonX86
shell:PublicGameTasks
shell:ChangeRemoveProgramsFolder
shell:Public
shell:Common Documents
shell:CSCFolder
shell:Local AppData
shell:Windows
shell:UsersFilesFolder
shell:ProgramFilesCommon
shell:Fonts
shell:Personal
Windows 7 Shortcuts
I compiled the following list with an early Alpha build of Windows 7. It is possible that some of these have changed with newer versions. If you find one that is wrong please let me know so I can correct it.
Wireless Networks pop-up
rundll32.exe van.dll,RunVAN
Advanced Restore
sdclt.exe /restorewizardadmin
Restore Files
sdclt.exe /restorewizard
Backup Location & Settings
sdclt.exe /configure
Add Network Location (wizard)
rundll32.exe shwebsvc.dll,AddNetPlaceRunDll
Indexing Options
control.exe srchadmin.dll
Notification Cache
rundll32.exe shell32.dll,Options_RunDLL 5
Aero (Transparency) Off
Rundll32.exe DwmApi #104
Aero (Transparency) On
Rundll32.exe DwmApi #102
Welcome Center
rundll32.exe oobefldr.dll,ShowWelcomeCenter
Add/Remove Programs
RunDll32.exe shell32.dll,Control_RunDLL appwiz.cpl,,0
Content Advisor
RunDll32.exe msrating.dll,RatingSetupUI
Control Panel
RunDll32.exe shell32.dll,Control_RunDLL
Date and Time Properties
RunDll32.exe shell32.dll,Control_RunDLL timedate.cpl
Display Settings
RunDll32.exe shell32.dll,Control_RunDLL access.cpl,,3
Device Manager
RunDll32.exe devmgr.dll DeviceManager_Execute
Folder Options – File Types
RunDll32.exe shell32.dll,Control_Options 2
Folder Options – General
RunDll32.exe shell32.dll,Options_RunDLL 0
Folder Options – Search
RunDll32.exe shell32.dll,Options_RunDLL 2
Folder Options – View
RunDll32.exe shell32.dll,Options_RunDLL 7
Forgotten Password Wizard
RunDll32.exe keymgr.dll,PRShowSaveWizardExW
Hibernate
RunDll32.exe powrprof.dll,SetSuspendState
Keyboard Properties
RunDll32.exe shell32.dll,Control_RunDLL main.cpl @1
Lock Screen
RunDll32.exe user32.dll,LockWorkStation
Mouse Properties
RunDll32.exe shell32.dll,Control_RunDLL main.cpl @0
Map Network Drive
RunDll32.exe shell32.dll,SHHelpShortcuts_RunDLL Connect
Network Connections
RunDll32.exe shell32.dll,Control_RunDLL ncpa.cpl
Power Options
RunDll32.exe Shell32.dll,Control_RunDLL powercfg.cpl
Regional Settings
RunDll32.exe shell32.dll,Control_RunDLL intl.cpl,,3
Stored Usernames and Passwords
RunDll32.exe keymgr.dll,KRShowKeyMgr
System Properties: Advanced
RunDll32.exe shell32.dll,Control_RunDLL sysdm.cpl,,4
System Properties: Automatic Updates
RunDll32.exe shell32.dll,Control_RunDLL sysdm.cpl,,5
Taskbar Properties
RunDll32.exe shell32.dll,Options_RunDLL 1
User Accounts
RunDll32.exe shell32.dll,Control_RunDLL nusrmgr.cpl
Windows Security Center
RunDll32.exe shell32.dll,Control_RunDLL wscui.cpl
Windows – About
RunDll32.exe SHELL32.DLL,ShellAboutW
Unplug/Eject Hardware
RunDll32.exe shell32.dll,Control_RunDLL hotplug.dll
Windows Firewall
RunDll32.exe shell32.dll,Control_RunDLL firewall.cpl
Wireless Network Setup
RunDll32.exe shell32.dll,Control_RunDLL NetSetup.cpl,@0,WNSW
Open Control Panel (All Items)
explorer.exe shell:::{21ec2020-3aea-1069-a2dd-08002b30309d}
Manage Wireless Networks
explorer.exe shell:::{1fa9085f-25a2-489b-85d4-86326eedcd87}
Sound Control Playback Tab
rundll32.exe shell32.dll,Control_RunDLLmmsys.cpl
Sound Control Sounds Tab
rundll32.exe shell32.dll,Control_RunDLLmmsys.cpl,,2
Sound Control Recording Tab
rundll32.exe shell32.dll,Control_RunDLLmmsys.cpl,,1
Add/Remove Programs
rundll32.exe shell32.dll,Control_RunDLL appwiz.cpl
Add/Remove Windows Components
rundll32.exe shell32.dll,Control_RunDLL appwiz.cpl,,2
Set Program Access and Computer Defaults
rundll32.exe shell32.dll,Control_RunDLL appwiz.cpl,,3
People Near Me
rundll32.exe shell32.dll,Control_RunDLL collab.cpl
People Near Me Sign In Tab
rundll32.exe shell32.dll,Control_RunDLL collab.cpl,,1
Screan Resolution
rundll32.exe shell32.dll,Control_RunDLL desk.cpl
Personalization
rundll32.exe shell32.dll,Control_RunDLL desk.cpl,,2
Screen Saver
rundll32.exe shell32.dll,Control_RunDLL desk.cpl,,1
Windows Firewall
rundll32.exe shell32.dll,Control_RunDLL firewall.cpl
Device Manager
rundll32.exe shell32.dll,Control_RunDLL hdwwiz.cpl
Power Options
rundll32.exe shell32.dll,Control_RunDLL powercfg.cpl
Power Options Change Plan Settings
rundll32.exe shell32.dll,Control_RunDLL powercfg.cpl,,1
System Properties
rundll32.exe shell32.dll,Control_RunDLL sysdm.cpl
System Properties Hardware Tab
rundll32.exe shell32.dll,Control_RunDLL sysdm.cpl,,2
System Properties Advanced Tab
rundll32.exe shell32.dll,Control_RunDLL sysdm.cpl,,3
System Properties System Protection Tab
rundll32.exe shell32.dll,Control_RunDLL sysdm.cpl,,4
System Properties Remote Tab
rundll32.exe shell32.dll,Control_RunDLL sysdm.cpl,,5
Pen and Touch Tablet PC Settings
rundll32.exe shell32.dll,Control_RunDLL tabletpc.cpl
Pen and Touch Tablet PC Settings Flicks Tab
rundll32.exe shell32.dll,Control_RunDLL tabletpc.cpl,,1
Pen and Touch Tablet PC Settings Handwriting Tab
rundll32.exe shell32.dll,Control_RunDLL tabletpc.cpl,,2
Phone and Modem Options
rundll32.exe shell32.dll,Control_RunDLL telephon.cpl
Phone and Modem Options Modems Tab
rundll32.exe shell32.dll,Control_RunDLL telephon.cpl,,1
Phone and Modems Options Advanced Tab
rundll32.exe shell32.dll,Control_RunDLL telephon.cpl,,2
Date and Time
rundll32.exe shell32.dll,Control_RunDLL timedate.cpl
Date and Time Additional Clocks
rundll32.exe shell32.dll,Control_RunDLL timedate.cpl,,1
Action Center
rundll32.exe shell32.dll,Control_RunDLL wscui.cpl
Unplug/Eject Hardware
RunDll32.exe shell32.dll,Control_RunDLL hotplug.dll
Internet Explorer Specific Commands
Delete Temporary Internet Files:
RunDll32.exe InetCpl.cpl,ClearMyTracksByProcess 8
Delete Cookies:
RunDll32.exe InetCpl.cpl,ClearMyTracksByProcess 2
Delete History:
RunDll32.exe InetCpl.cpl,ClearMyTracksByProcess 1
Delete Form Data:
RunDll32.exe InetCpl.cpl,ClearMyTracksByProcess 16
Delete Passwords:
RunDll32.exe InetCpl.cpl,ClearMyTracksByProcess 32
Delete All:
RunDll32.exe InetCpl.cpl,ClearMyTracksByProcess 255
Delete All + files and settings stored by Add-ons:
RunDll32.exe InetCpl.cpl,ClearMyTracksByProcess 4351
Miscellaneous Variables
Windows Directory
%WINDIR%
%SYSTEMROOT%
Hard Drive That Contains OS
%HOMEDRIVE%
Users Home Directory
%HOMEPATH%
%USERPROFILE%
Default Temporary Directory
%TEMP%
%TMP%
Program Files
%PROGRAMFILES%
Current Users Application Data Directory
%APPDATA%
If anyone has additional ones that I have missed you can submit them and I will add them to this list."
Shell commands are incredibly useful when creating shortcuts or quickly accessing hard to get to locations. They can be used to pin shortcuts to the Taskbar or just to make your life easier. For those that are preceded by “Shell:” when using them in shortcuts you need to add “explorer.exe” in front of them. It should then look like this: explorer.exe shell:Personal
Windows 7 Only
shell:Libraries
shell:MusicLibrary
shell:VideosLibrary
shell:OtherUsersFolder
shell:Device Metadata Store
shell:PublicSuggestedLocations
shell:DocumentsLibrary
shell:User Pinned
shell:UsersLibrariesFolder
shell:PicturesLibrary
shell:ImplicitAppShortcuts
shell:Ringtones
shell:CommonRingtones
Windows Vista & 7
shell:Common Programs
shell:GameTasks
shell:UserProfiles
shell:MyComputerFolder
shell:SyncSetupFolder
shell:DpapiKeys
shell:SamplePlaylists
shell:Favorites
shell:My Video
shell:SearchHomeFolder
shell:System
shell:CommonVideo
shell:SyncResultsFolder
shell:LocalizedResourcesDir
shell:Cookies
shell:Original Images
shell:CommonMusic
shell:My Pictures
shell:Cache
shell:Downloads
shell:CommonDownloads
shell:AppData
shell:SyncCenterFolder
shell:My Music
shell:ConflictFolder
shell:SavedGames
shell:InternetFolder
shell:Quick Launch
shell:SystemCertificates
shell:Contacts
shell:TreePropertiesFolder
shell:Profile
shell:Start Menu
shell:Common AppData
shell:PhotoAlbums
shell:ConnectionsFolder
shell:Administrative Tools
shell:PrintersFolder
shell:Default Gadgets
shell:ProgramFilesX86
shell:Searches
shell:Common Startup
shell:ControlPanelFolder
shell:SampleVideos
shell:SendTo
shell:ResourceDir
shell:ProgramFiles
shell:CredentialManager
shell:PrintHood
shell:MAPIFolder
shell:CD Burning
shell:AppUpdatesFolder
shell:Common Start Menu
shell:LocalAppDataLow
shell:Templates
shell:Gadgets
shell:Programs
shell:Recent
shell:SampleMusic
shell:Desktop
shell:CommonPictures
shell:RecycleBinFolder
shell:CryptoKeys
shell:Common Templates
shell:Startup
shell:Links
shell:OEM Links
shell:SamplePictures
shell:Common Desktop
shell:NetHood
shell:Games
shell:Common Administrative Tools
shell:NetworkPlacesFolder
shell:SystemX86
shell:History
shell:AddNewProgramsFolder
shell:Playlists
shell:ProgramFilesCommonX86
shell:PublicGameTasks
shell:ChangeRemoveProgramsFolder
shell:Public
shell:Common Documents
shell:CSCFolder
shell:Local AppData
shell:Windows
shell:UsersFilesFolder
shell:ProgramFilesCommon
shell:Fonts
shell:Personal
Windows 7 Shortcuts
I compiled the following list with an early Alpha build of Windows 7. It is possible that some of these have changed with newer versions. If you find one that is wrong please let me know so I can correct it.
Wireless Networks pop-up
rundll32.exe van.dll,RunVAN
Advanced Restore
sdclt.exe /restorewizardadmin
Restore Files
sdclt.exe /restorewizard
Backup Location & Settings
sdclt.exe /configure
Add Network Location (wizard)
rundll32.exe shwebsvc.dll,AddNetPlaceRunDll
Indexing Options
control.exe srchadmin.dll
Notification Cache
rundll32.exe shell32.dll,Options_RunDLL 5
Aero (Transparency) Off
Rundll32.exe DwmApi #104
Aero (Transparency) On
Rundll32.exe DwmApi #102
Welcome Center
rundll32.exe oobefldr.dll,ShowWelcomeCenter
Add/Remove Programs
RunDll32.exe shell32.dll,Control_RunDLL appwiz.cpl,,0
Content Advisor
RunDll32.exe msrating.dll,RatingSetupUI
Control Panel
RunDll32.exe shell32.dll,Control_RunDLL
Date and Time Properties
RunDll32.exe shell32.dll,Control_RunDLL timedate.cpl
Display Settings
RunDll32.exe shell32.dll,Control_RunDLL access.cpl,,3
Device Manager
RunDll32.exe devmgr.dll DeviceManager_Execute
Folder Options – File Types
RunDll32.exe shell32.dll,Control_Options 2
Folder Options – General
RunDll32.exe shell32.dll,Options_RunDLL 0
Folder Options – Search
RunDll32.exe shell32.dll,Options_RunDLL 2
Folder Options – View
RunDll32.exe shell32.dll,Options_RunDLL 7
Forgotten Password Wizard
RunDll32.exe keymgr.dll,PRShowSaveWizardExW
Hibernate
RunDll32.exe powrprof.dll,SetSuspendState
Keyboard Properties
RunDll32.exe shell32.dll,Control_RunDLL main.cpl @1
Lock Screen
RunDll32.exe user32.dll,LockWorkStation
Mouse Properties
RunDll32.exe shell32.dll,Control_RunDLL main.cpl @0
Map Network Drive
RunDll32.exe shell32.dll,SHHelpShortcuts_RunDLL Connect
Network Connections
RunDll32.exe shell32.dll,Control_RunDLL ncpa.cpl
Power Options
RunDll32.exe Shell32.dll,Control_RunDLL powercfg.cpl
Regional Settings
RunDll32.exe shell32.dll,Control_RunDLL intl.cpl,,3
Stored Usernames and Passwords
RunDll32.exe keymgr.dll,KRShowKeyMgr
System Properties: Advanced
RunDll32.exe shell32.dll,Control_RunDLL sysdm.cpl,,4
System Properties: Automatic Updates
RunDll32.exe shell32.dll,Control_RunDLL sysdm.cpl,,5
Taskbar Properties
RunDll32.exe shell32.dll,Options_RunDLL 1
User Accounts
RunDll32.exe shell32.dll,Control_RunDLL nusrmgr.cpl
Windows Security Center
RunDll32.exe shell32.dll,Control_RunDLL wscui.cpl
Windows – About
RunDll32.exe SHELL32.DLL,ShellAboutW
Unplug/Eject Hardware
RunDll32.exe shell32.dll,Control_RunDLL hotplug.dll
Windows Firewall
RunDll32.exe shell32.dll,Control_RunDLL firewall.cpl
Wireless Network Setup
RunDll32.exe shell32.dll,Control_RunDLL NetSetup.cpl,@0,WNSW
Open Control Panel (All Items)
explorer.exe shell:::{21ec2020-3aea-1069-a2dd-08002b30309d}
Manage Wireless Networks
explorer.exe shell:::{1fa9085f-25a2-489b-85d4-86326eedcd87}
Sound Control Playback Tab
rundll32.exe shell32.dll,Control_RunDLLmmsys.cpl
Sound Control Sounds Tab
rundll32.exe shell32.dll,Control_RunDLLmmsys.cpl,,2
Sound Control Recording Tab
rundll32.exe shell32.dll,Control_RunDLLmmsys.cpl,,1
Add/Remove Programs
rundll32.exe shell32.dll,Control_RunDLL appwiz.cpl
Add/Remove Windows Components
rundll32.exe shell32.dll,Control_RunDLL appwiz.cpl,,2
Set Program Access and Computer Defaults
rundll32.exe shell32.dll,Control_RunDLL appwiz.cpl,,3
People Near Me
rundll32.exe shell32.dll,Control_RunDLL collab.cpl
People Near Me Sign In Tab
rundll32.exe shell32.dll,Control_RunDLL collab.cpl,,1
Screan Resolution
rundll32.exe shell32.dll,Control_RunDLL desk.cpl
Personalization
rundll32.exe shell32.dll,Control_RunDLL desk.cpl,,2
Screen Saver
rundll32.exe shell32.dll,Control_RunDLL desk.cpl,,1
Windows Firewall
rundll32.exe shell32.dll,Control_RunDLL firewall.cpl
Device Manager
rundll32.exe shell32.dll,Control_RunDLL hdwwiz.cpl
Power Options
rundll32.exe shell32.dll,Control_RunDLL powercfg.cpl
Power Options Change Plan Settings
rundll32.exe shell32.dll,Control_RunDLL powercfg.cpl,,1
System Properties
rundll32.exe shell32.dll,Control_RunDLL sysdm.cpl
System Properties Hardware Tab
rundll32.exe shell32.dll,Control_RunDLL sysdm.cpl,,2
System Properties Advanced Tab
rundll32.exe shell32.dll,Control_RunDLL sysdm.cpl,,3
System Properties System Protection Tab
rundll32.exe shell32.dll,Control_RunDLL sysdm.cpl,,4
System Properties Remote Tab
rundll32.exe shell32.dll,Control_RunDLL sysdm.cpl,,5
Pen and Touch Tablet PC Settings
rundll32.exe shell32.dll,Control_RunDLL tabletpc.cpl
Pen and Touch Tablet PC Settings Flicks Tab
rundll32.exe shell32.dll,Control_RunDLL tabletpc.cpl,,1
Pen and Touch Tablet PC Settings Handwriting Tab
rundll32.exe shell32.dll,Control_RunDLL tabletpc.cpl,,2
Phone and Modem Options
rundll32.exe shell32.dll,Control_RunDLL telephon.cpl
Phone and Modem Options Modems Tab
rundll32.exe shell32.dll,Control_RunDLL telephon.cpl,,1
Phone and Modems Options Advanced Tab
rundll32.exe shell32.dll,Control_RunDLL telephon.cpl,,2
Date and Time
rundll32.exe shell32.dll,Control_RunDLL timedate.cpl
Date and Time Additional Clocks
rundll32.exe shell32.dll,Control_RunDLL timedate.cpl,,1
Action Center
rundll32.exe shell32.dll,Control_RunDLL wscui.cpl
Unplug/Eject Hardware
RunDll32.exe shell32.dll,Control_RunDLL hotplug.dll
Internet Explorer Specific Commands
Delete Temporary Internet Files:
RunDll32.exe InetCpl.cpl,ClearMyTracksByProcess 8
Delete Cookies:
RunDll32.exe InetCpl.cpl,ClearMyTracksByProcess 2
Delete History:
RunDll32.exe InetCpl.cpl,ClearMyTracksByProcess 1
Delete Form Data:
RunDll32.exe InetCpl.cpl,ClearMyTracksByProcess 16
Delete Passwords:
RunDll32.exe InetCpl.cpl,ClearMyTracksByProcess 32
Delete All:
RunDll32.exe InetCpl.cpl,ClearMyTracksByProcess 255
Delete All + files and settings stored by Add-ons:
RunDll32.exe InetCpl.cpl,ClearMyTracksByProcess 4351
Miscellaneous Variables
Windows Directory
%WINDIR%
%SYSTEMROOT%
Hard Drive That Contains OS
%HOMEDRIVE%
Users Home Directory
%HOMEPATH%
%USERPROFILE%
Default Temporary Directory
%TEMP%
%TMP%
Program Files
%PROGRAMFILES%
Current Users Application Data Directory
%APPDATA%
If anyone has additional ones that I have missed you can submit them and I will add them to this list."
Rundll32 使用inf 裝 driver @ Ces't la vie :: Xuite日誌
Rundll32 使用inf 裝 driver @ Ces't la vie :: Xuite日誌: "rundll32 呼叫setupapi就可以安裝或是反安裝驅動程式
rundll32.exe setupapi,InstallHinfSection DefaultInstall 132 .\setup.inf
rundll32.exe 執行檔
setupapi.dll 動態連結檔
InstallHinfSection function
VOID CALLBACK InstallHinfSection(
__in HWND hwnd,
__in HINSTANCE ModuleHandle,
__in PCTSTR CmdLineBuffer,
__in INT nCmdShow
);
Parameters
hwnd [in]
The parent window handle. Typically hwnd is Null.
ModuleHandle [in]
Reserved and should be Null.
CmdLineBuffer [in]
Pointer to buffer containing the command line. You should use a null-terminated string.
nCmdShow [in]
Reserved and should be zero.
Return Value
This function does not return a value.
數字132
Value Description
0 System provided INF.
128 Set the default path of the installation to the location of the INF. This is the typical setting.
+0 Never reboot the computer.
+1 Reboot the computer in all cases.
+2 Always ask the users if they want to reboot.
+3 Reboot the computer if necessary without asking user for permission.
+4 If a reboot of the computer is necessary, ask the user for permission before rebooting.
.\setup.inf
路徑加上inf檔名
安裝用 DefaultInstall
反安裝用 DefaultUninstall
當然inf需要依照格式編寫
http://msdn.microsoft.com/en-us/library/ms793586.aspx
rundll32.exe setupapi,InstallHinfSection DefaultInstall 132 .\setup.inf
rundll32.exe 執行檔
setupapi.dll 動態連結檔
InstallHinfSection function
VOID CALLBACK InstallHinfSection(
__in HWND hwnd,
__in HINSTANCE ModuleHandle,
__in PCTSTR CmdLineBuffer,
__in INT nCmdShow
);
Parameters
hwnd [in]
The parent window handle. Typically hwnd is Null.
ModuleHandle [in]
Reserved and should be Null.
CmdLineBuffer [in]
Pointer to buffer containing the command line. You should use a null-terminated string.
nCmdShow [in]
Reserved and should be zero.
Return Value
This function does not return a value.
數字132
Value Description
0 System provided INF.
128 Set the default path of the installation to the location of the INF. This is the typical setting.
+0 Never reboot the computer.
+1 Reboot the computer in all cases.
+2 Always ask the users if they want to reboot.
+3 Reboot the computer if necessary without asking user for permission.
+4 If a reboot of the computer is necessary, ask the user for permission before rebooting.
.\setup.inf
路徑加上inf檔名
安裝用 DefaultInstall
反安裝用 DefaultUninstall
當然inf需要依照格式編寫
http://msdn.microsoft.com/en-us/library/ms793586.aspx
訂閱:
文章 (Atom)