註冊
登錄
設施
幫助
頂客論壇
»
影音技術
» 解讀Autorun.inf自動執行檔的寫法
‹‹ 上一主題
|
下一主題 ››
發新話題
發佈投票
發佈商品
發佈懸賞
發佈活動
發佈辯論
發佈視頻
[分享] 解讀Autorun.inf自動執行檔的寫法
midi78578
拍狼
金牌會員
專門修理電腦不乖的電腦人 ...
UID
17982
帖子
3833
精華
367
積分
57502
金幣
53172
威望
1304
推廣
0
閱讀權限
88
來自
光華商場零件供應中心
註冊時間
2006-6-23
最後登錄
2014-7-8
發短消息
加為好友
當前離線
1樓
大
中
小
發表於 2007-5-8 00:55
解讀Autorun.inf自動執行檔的寫法
我們在使用各種光盤時,都會發現同一種現象:當我們把光盤放入光驅後,Windows便能自動地啟動光盤上的某個程式,從而完成一個基於Windows平 台設計的產品的配置、裝設等操作;或者打開檔案總管,會發現光盤的圖示已被改變成標志其產品之類的圖示了。這的確讓我們感覺到操作上的方便和快捷。其實, 這是利用了Windows作業系統的“自動播放(AutoPlay)”功能。下面,筆者就對“自動播放”進行詳細介紹,以期讀者能打造自己需要的“自動播放”。
自動播放的工作原理
自動播放的原理很簡單:當光盤被放入採用Windows作業系統的電腦光驅中時,系統會立即偵測Windows的一個32位光驅驅動程式,然後搜尋光 盤上根目錄下一個叫Autorun.inf的配置文件,並自動運行這個Autorun.inf中設定的命令。顯然,在整個過程中起著關鍵作用的便是這個 Autorun.inf文件,我們所體驗到的“自動”,事實上都是在這個文件裏預先指定的。
解讀Autorun.inf
Autorun.inf是一個文本形式的配置文件,我們可以用文本編輯軟體進行編輯,它隻能位於驅動器的根目錄下。這個文件包含了需要自動運行的命令,如改變的驅動器圖示、運行的程式檔案、可選快捷菜單等內容。
Autorun.inf文件結構較簡單,主要包含一個固定的段標識[Autorun]和自定的自動播放命令(Autoplay command)。定義好Autoplay command就可以實現自己的自動播放了。
1﹒ 改變驅動器圖示命令:Defaulticon命令和Icon命令
這兩條命令都能改變光盤圖示,功能相同。我們平時見到的光盤圖示的改變就是用此命令來實現的。
命令中都包含圖示資訊文件(iconname),可以指出該文件在光盤上的相對路徑(path),在沒有指出路徑的情況下,Windows自動到光盤的根目錄下搜尋圖示資訊文件。其命令格式為:
Defaulticon=Path\Iconname
或Icon=Path\Iconname
Iconname可以是.ico、.bmp、.exe或 .dll文件。例如,要引用光盤根目錄上Setup.ico作為光盤的圖示,可這樣表示:
Defaulticon=Setup.ico
或Icon=Setup.ico
如果這個文件包含多個圖示,可指定文件中的一個資源號(索引)來引用其中的不同圖示。資源號由0、1、2……數字來標識,分別代表圖示資訊文件中的第 一個圖示、第二個圖示……,它與圖示資訊文件間用逗號分隔。例如,在光盤autorun目錄下有一個包含兩個圖示的autorun.exe文件,要引用其 中的第二個圖示作為光盤圖示,可以這樣表示:
Defaulticon =Autorun\Autorun.exe, 1
或Icon=Autorun\Autorun.exe, 1
當你對這個圖示感到不滿意時,隻要換一個資源號即可。
需要說明的是,如果Defaulticon 和Icon命令同出現在一個Autorun.inf文件中,Autoplay使用Defaulticon命令而忽略Icon命令。
自動執行檔﹙Autorun.inf﹚的寫法
什麼是 “Autorun.inf” 檔?
當您希望使用者將光碟片一放進光碟機,即能自動播放您想要的頁面或開啟某個檔案時。
(指一般 CD-Title,而非 VCD 或相片光碟)
需於光碟根目錄下,有 “Autorun.inf” 檔,於該檔中指定開啟 (open) 某執行檔 (.exe) 或檔案。
檔名需為 Autorun.inf (Win 系統大小寫均可)
【狀況一】要開啟的檔案是一般執行檔,不是網頁時
[autorun]
open=檔名.exe
icon=檔名.ico
註:(1) "autorun.inf” 為純文字檔,可用 "記事本" 編寫。
(2) 將 "autorun.inf” 與執行檔 (.exe) 同置根目錄層。
(如果 exe 檔不在根目錄,請依相對路徑寫法,指向它)
(3) 執行檔 (.exe) 的來源可能是多媒體整合軟體包裝後的檔案,如...
訪客無法瀏覽此圖片或連結,請先
註冊
或
登入會員
。
(1) Flash、(2) Director、(3) Authorware、
(4) 一般(未特別設計圖示者)、(5) 自行設計圖示者
(4) 圖示(icon)附檔名為 .ico
(5) 未指定圖示(icon)時, 則依作業系統預設值,例如:
(6) 圖示製作軟體
擬自行製作圖示,除 PhotoImpact 7.0 外,可使用軟體有...
【網站】Toget 軟體下載
PC home > toget首頁 > 美術繪圖 > 圖示製作
【狀況二】要開啟的檔案是網頁,不是一般執行檔時
當主頁為網頁時,由於 html 不是執行檔,所以需於其前另行指定能開啟它之程式。
讓作業系統的檔案總管(Explorer.exe)自行判斷用什麼應用程式去開 html 檔,因每台電腦安裝路徑或作業系統(WINDOWS、WINNT)不盡相同,故不宜指定檔案總管(Explorer.exe)的絕對路徑。
註:"Explorer.exe" 是檔案總管,不是 IE 的 "IEXPLORE.EXE"。
【正確寫法】
[autorun]
open=Explorer.exe index.htm
icon=檔名.ico
註:此處 "index.htm" 僅為舉例
屆時視網頁檔名為何,更改主檔名,以及副檔名究竟為 htm 或 html。
【錯誤寫法】
※不應直接指定 .htm 檔,缺執行檔 .exe
[autorun]
open=index.htm
icon=檔名.ico
※不宜指定檔案總管的絕對路徑(使用者的系統碟未必為 c 或您所寫路徑)
[autorun]
open=C:\Windows\Explorer.exe index.htm
icon=檔名.ico
【狀況三】其他檔案格式
其他檔案格式也可以嗎?
原則上都是可以的,只要該台電腦能開的起來。以下以隨身簡報檔為例:
[autorun]
open=explorer.exe 檔名.pps
icon=檔名.ico
如果光碟片放入光碟機時,並沒有自動執行(autorun),請朝以下幾方面檢查:
一、光碟機「自動安插通知」的選項被關閉
以Windows 98舉例,在桌面「我的電腦」圖示上按滑鼠右鍵,選內容,到「裝置管理員」這一頁。
在 CD-ROM 前的 "+" 號上按一下,以便展開,你可以看到安裝在你電腦上的光碟機型號,選取之後,按「內容」,到「設定值」頁,如果需要Autorun 的功能就把「自動安插通知」勾起來,重新開機後這功能就生效。
二、登錄值不正確
與 Autorun 有關的登錄值錯誤也會造成 autorun 功能失效,因此使用登錄編輯器來修改登錄值。
· 按「開始」,到「執行」,輸入 REGEDIT 後按確定。
· 到以下位置檢查NoDriveTypeAutoRun 的內容:
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\
Policies\Explorer
與
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\
Policies\Explorer
在 NoDriveTypeAutoRun 上按兩下,把它打開,檢查數值資料是不是如以下:
0000 95 00 00 00,如果不是的話,請改成這樣的值,儲存後需要重新開機新的設定才會生效。
三、光碟片 Autorun.inf 的寫法不合規定
如果只是某些光碟片無法自動執行,這可能就是該光碟的 autorun.inf 檔案有問題,最常見的的一種情形就是自己製作的自動執行光碟,autorun.inf 檔案沒有照規定格式撰寫,造成 Windows 的 CD-ROM 偵測驅動程式(Cdvsd.vxd)無法判斷,Autorun 功能當然失效。
這一點你當然無法改變,只有去找製作這張光碟的人或廠商。
四、驅動程式的問題
這應該只會出現在一些非常古老的光碟機上,新的光碟機應該不會有這個問題。有些古老的光碟機並沒有提供 Protect Mode 的驅動程式,只有 Real Mode 的驅動程式,Windows 的 Autorun 功能只支援 Protect Mode 驅動程式,不支援 Real Mode 驅動程式。
總而言之,就是該光碟機的驅動程式一定要掛在 Config.sys 、Autoexec.bat 裡 Windows 才能抓得到的這種古董光碟機,這類光碟機通常都無法支援 Windows 的 Autorun 功能。
如果你的光碟機 Windows 本身即可抓得到,就不需要在 Config.sys 或 Autoexec.bat 裡再掛上Real Mode 的驅動程式(即 DOS 的驅動程式),除非你有特殊的用途(好比玩一些古老的純 DOS 光碟遊戲 ),如此可以避免降低光碟機的效能。
備註:Autorun 的原理
光碟片一放入光碟機就會自動被執行,主要依靠著兩個檔案,一是光碟片上的 Autorun.inf 檔,另一個是作業系統本身系統檔之一的 Cdvsd.vxd。
Cdvsd.vxd 會隨時偵測光碟機中是否有放入光碟片的動作,如果有的話,便開始尋找光碟根目錄下的 autorun.inf 檔。依照 autorun.inf 檔案裡的敘述,Windows 就會去執行 autorun.inf 裡的 [AUTORUN]區段中,open= 這行所指定執行的檔案。
autorun.inf 是一個純文字格式的檔案,你可以用任何一種文字編輯軟體把它打開,有興趣的話,你可以找一片光碟,開啟它的 autorun.inf 研究看看。
本帖最近評分記錄
ga032794
經驗
+20
精品文章
2007-7-26 20:52
ga032794
金幣
+20
精品文章
2007-7-26 20:52
UID
17982
精華
367
金幣
53172
推廣
0
閱讀權限
88
性別
男
來自
光華商場零件供應中心
在線時間
1302 小時
查看詳細資料
TOP
ydnlbfd
正式會員
UID
2754
帖子
204
精華
2
積分
932
金幣
903
威望
7
推廣
0
閱讀權限
10
來自
台灣南部
註冊時間
2006-5-19
最後登錄
2011-7-26
發短消息
加為好友
當前離線
2樓
大
中
小
發表於 2007-11-30 17:06
每次燒光碟時都寫1個簡單的自動執行檔
沒想到自動執行檔的學問還這麼多......
謝謝你的詳細解說
UID
2754
精華
2
金幣
903
推廣
0
閱讀權限
10
來自
台灣南部
在線時間
96 小時
查看詳細資料
TOP
cn_leah
正式會員
UID
288370
帖子
221
精華
0
積分
639
金幣
639
威望
0
推廣
0
閱讀權限
10
註冊時間
2009-2-27
最後登錄
2019-1-9
發短消息
加為好友
當前離線
3樓
大
中
小
發表於 2009-2-28 07:55
thank
UID
288370
精華
0
金幣
639
推廣
0
閱讀權限
10
在線時間
381 小時
查看詳細資料
TOP
‹‹ 上一主題
|
下一主題 ››
最近訪問的版塊 ...
北部旅遊
美工,繪圖軟體
靈異,鬼故事
Android 專區
紫微斗數
遊學,留學,移民
NBA籃球大聯盟
證照檢定
天文觀星
命理相學
高爾夫
English Only
中部美食
國畫,書法
布藝,拼布
日韓歌詞
廚房,浴室,家電
網路資源
其他貼圖
動物世界
控制面板首頁
編輯個人資料
積分記錄
公眾用戶組
個人空間管理
宣傳中心
轉貼工具
ip查詢器
勳章列表
打工賺錢
本站所有圖文均屬網友發表,僅代表作者的觀點與本站無關,如有侵權請通知版主會盡快刪除。