註冊OCX控制元件
阿新 • • 發佈:2019-02-04
平時註冊ocx控制元件,可以以管理員身份執行cmd.exe 輸入"regsvr32 檔案路徑",或者直接寫到批處理及bat檔案中,以管理員身份執行。
但是當你的程式拷貝到其他電腦上時,註冊時的路徑路徑就成了問題,每次都要更改路徑終究不是一個長久之計,所以換一個思路,把bat檔案和要註冊的ocx控制元件放在同一個資料夾下,然後資料夾中的ocx進行註冊,即
regsvr32 xxxx.ocx
但是!問題總是多的超出想象,在xp環境下按如上操作一點兒問題都沒有,可就是win7總是給我找彆扭。
以管理員身份執行的話,獲取的原始檔路徑就是預設的系統目錄下的system32,當然在這個資料夾下根本就找不到這些ocx控制元件,如圖
經過各種站在巨人的肩膀上,我終於找到了解決辦法,就是在bat檔案開頭獲取bat檔案所在路徑,即
cd /d %~dp0
regsvr32 xxxx.ocx
現在,以管理員身份執行,就沒問題了,"編寫一次,到處執行"。
PS:
%i提取第i個命令選項,例如%1提取第1個option,i可以取值從1到9
%~0: 取檔名(名+副檔名)
%~f0:取全路徑
%~d0:取驅動器名
%~p0:只取路徑(不包驅動器)
%~n0:只取檔名
%~x0:只取副檔名
%~s0:取縮寫全路徑名
%~a0:取檔案屬性
%~t0:取檔案建立時間
%~z0:取檔案大小
以上選項可組合使用。