我創建了一個批處理文件,該文件轉到一系列應用程序目錄,並在其中註冊所有dll和ocx文件。如果我打開提升的命令提示符並切換到特定的目錄並手動輸入regsvr命令,則它工作正常。該批處理文件看起來像試圖註冊每個文件,但它們不會被註冊。我試過右鍵點擊它,並告訴它以管理員身份運行(命令窗口不在標題欄中顯示「管理員」),但它沒有註冊。如果我打開一個提升的命令窗口並嘗試從那裏運行批處理文件,它也不起作用。從批處理文件運行regsvr32不起作用
我也嘗試把腳本文件放在c:\ Windows \ System32和C:\ Windows \ SysWOW64中,但沒有任何工作。
我也讀過,該文件需要是ANSI而不是Unicode,但這也沒有幫助。
是否有某種命令,我可以把regsvr,這將強制每一個被提升的行?我不想讓用戶手動輸入所有命令。
這裏是我的批處理文件:
chdir c:\program files (x86)\pfps
for /r %%i in (*.dll) do regsvr32 /s %%i
chdir DataManager
for /r %%i in (*.dll) do regsvr32 /s %%i
chdir ..\falcon
for /r %%i in (*.dll) do regsvr32 /s %%i
for /r %%i in (*.ocx) do regsvr32 /s %%i
chdir FVOverlays
for /r %%i in (*.dll) do regsvr32 /s %%i
chdir ..\..\FVImageryService
for /r %%i in (*.dll) do regsvr32 /s %%i
chdir ..\GarminGPSFeed
for /r %%i in (*.dll) do regsvr32 /s %%i
chdir ..\MapDataServer
for /r %%i in (*.dll) do regsvr32 /s %%i
chdir ..\SkyViewNG
for /r %%i in (*.dll) do regsvr32 /s %%i
for /r %%i in (*.ocx) do regsvr32 /s %%i
chdir ..\System
for /r %%i in (*.dll) do regsvr32 /s %%i
for /r %%i in (*.ocx) do regsvr32 /s %%i
嘗試引號:'for/r %%我在(* .dll)中做regsvr32/s「%% i」'。 –
這就是訣竅!這些引用使得它起作用了什麼? – jdixon
用雙引號括起來的路徑被視爲單路徑,即使它包含空格。 – user2956477