史萊姆論壇

返回   史萊姆論壇 > 教學文件資料庫 > 程式 & 網頁設計技術文件
忘記密碼?
論壇說明

歡迎您來到『史萊姆論壇』 ^___^

您目前正以訪客的身份瀏覽本論壇,訪客所擁有的權限將受到限制,您可以瀏覽本論壇大部份的版區與文章,但您將無法參與任何討論或是使用私人訊息與其他會員交流。若您希望擁有完整的使用權限,請註冊成為我們的一份子,註冊的程序十分簡單、快速,而且最重要的是--註冊是完全免費的!

請點擊這裡:『註冊成為我們的一份子!』

Google 提供的廣告


 
 
主題工具 顯示模式
舊 2005-12-13, 06:40 PM   #1 (permalink)
榮譽會員
 
psac 的頭像
榮譽勳章
UID - 3662
在線等級: 級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時
註冊日期: 2002-12-07
住址: 木柵市立動物園
文章: 17381
現金: 5253 金幣
資產: 33853 金幣
預設 Regsvr32 用法和錯誤消息的說明

對於那些可以自行註冊的對象連接和嵌入 (OLE) 控件,例如動態連接庫 (DLL) 文件或 ActiveX 控件 (OCX) 文件,您可以使用 Regsvr32 工具 (Regsvr32.exe) 來將它們註冊和取消註冊。

Regsvr32.exe 的用法

RegSvr32.exe 具有以下指令行選項: Regsvr32 [/n] [/i[:cmdline]] dllname

/u - Unregister server<BR/>
/i - Call DllInstall passing it an optional [cmdline];
when used with /u calls dll uninstall
/n - do not call DllRegisterServer; this option must
be used with /i

當您使用 Regsvr32.exe 時,它會嘗試載入該群組件並使用它的 DLLSelfRegister 函數。如果此嘗試成功,Regsvr32.exe 會顯示一個指示成功的對話視窗。如果此嘗試失敗,Regsvr32.exe 會返回一條錯誤消息,其中可能會包括一個 Win32 錯誤程式碼。要檢視 Win32 錯誤程式碼的列表,請參見下面的 Microsoft Web 站點:
http://msdn.microsoft.com/librar ... n32_error_codes.asp

例如,要手動註冊 Sample.ocx ActiveX 控件,請在 MS-DOS 提示號處按鍵輸入以下指令:
c:\regsvr32.exe sample.ocx

Regsvr32.exe 錯誤消息

以下列表介紹了 RegSvr32 錯誤消息和可能的原因。

Unrecognized flag:/invalid_flag

按鍵輸入的標誌或開關組合無效(請參閱本文中的「Regsvr32.exe 的用法」一節)。

No DLL name specified.

未包括 .dll 檔案名(請參閱本文中的「Regsvr32.exe 的用法」一節)。

Dllname was loaded, but the DllRegisterServer or DllUnregisterServer entry point was not found.

Dllname 不是 .dll 或 .ocx 文件。例如,按鍵輸入 regsvr32 wjview.exe 就會產生該錯誤消息。

Dllname is not an executable file and no registration helper is registered for this file type.

Dllname 不是可執行文件(.exe、.dll 或 .ocx)。例如,按鍵輸入 regsvr32 autoexec.bat 就會產生該錯誤消息。

Dllname was loaded, but the DllRegisterServer or DllUnregisterServer entry point was not found.

Dllname 可能未匯出,或者記憶體中可能有損壞的 Dllname 版本。請考慮使用 Pview 來檢測該檔案並移除它。

Dllname is not self-registerable or a corrupted version is in memory.

例如,按鍵輸入 regsvr32 icwdial.dll 後就會返回該錯誤消息,因為 Icwdial.dll 文件不能自行註冊。如果您懷疑記憶體中有損壞的 Dllname 版本,請嘗試重新啟動電腦,或重新抽取該檔案的原始版本。如果您執行的是 Windows NT,可能需要使用 Microsoft Windows NT Server 4.0 資源工具包 中的 Kill 或 Pview 工具。有關其他訊息,請按下以檢視以下 Microsoft 知識庫文章:
197155 如何終止孤立工作

OleInitialize failed (or OleUninitialize failed).

Regsvr32 必須先啟始化 COM 庫,然後才能使用所需的 COM 庫函數並在關閉時撤消對該庫的啟始化。如果對 COM 庫進行啟始化或撤消啟始化的嘗試失敗,就會出現這些錯誤消息。例如,Ole32.dll 文件可能已經損壞,或者其版本有誤。

LoadLibrary("Dllname") failed.GetlastError returns 0x00000485

在 Winerror.h 中,0x00000485 = 1157 (ERROR_DLL_NOT_FOUND),表示「找不到執行該應用程式所需的某個庫文件」。例如,按鍵輸入 regsvr32 missing.dll 後,如果找不到 Missing.dll 文件,就會返回該錯誤消息。

LoadLibrary("Dllname") failed.GetLastError returns 0x00000002

在 Winerror.h 中,0x00000002 = 2 (ERROR_FILE_NOT_FOUND),表示「系統找不到指定的文件」。換言之,系統找不到相關的 DLL。例如,如果按鍵輸入 regsvr32 icwdial.dll,而此時缺少 Tapi32.dll(依賴項),就會返回該錯誤消息。

LoadLibrary("dskmaint.dll") failed.GetLastError returns 0x000001f

在 Winerror.h 中,0x000001f = 31 (ERROR_GEN_FAILURE),表示「附加到系統上的設備不能正常工作」。如果您嘗試註冊 Win16 .dll 文件,就會發生此現象。例如,按鍵輸入 regsvr32 dskmaint.dll 會返回該錯誤消息。

DllRegisterServer (or DllUnregisterServer)in Dllname failed.返回程式碼是:字串串

在 Winerror.h 中搜尋字串串。
Regsvr32.exe 和依賴項
RegSvr32.exe 依賴於 Kernel32.dll、User32.dll 和 Ole32.dll 文件(在 Windows NT 中,還依賴於 Msvcrt.dll 和 Advapi32.dll 文件)。Regsvr32.exe 會載入您嘗試註冊或撤消註冊的文件及其所有依賴項。如果缺少必需的文件或者它們已損壞,該工作可能會失敗。

您可以使用 Depends.exe 來確定您嘗試註冊或撤消註冊的文件的依賴項。在 Microsoft Windows 98 資源工具包 和 Microsoft Windows NT 4.0 資源工具包 支持工具中都提供了 Depends.exe。
247024 Tools Included with the Microsoft Windows 98 Resource Kit
__________________
http://bbsimg.qianlong.com/upload/01/08/29/68/1082968_1136014649812.gif
psac 目前離線  
送花文章: 3, 收花文章: 1631 篇, 收花: 3205 次
舊 2006-05-21, 09:26 PM   #2 (permalink)
榮譽會員
 
psac 的頭像
榮譽勳章
UID - 3662
在線等級: 級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時
註冊日期: 2002-12-07
住址: 木柵市立動物園
文章: 17381
現金: 5253 金幣
資產: 33853 金幣
預設

Regsvr32 常用最佳化

--------------------------------------------------------------------------------

Regsvr32是一個Windows系統的內嵌程序,不僅存在於Windows 2000 / XP / 2003下,同時也能在98中找到它的身影。它的主要功能就是註冊或卸載動態連接庫文件(DLL)和嵌入式控件(OCX)

Regsvr32指令一共有四個參數,分別是:
  /s:註冊或卸載成功後不顯示操作成功的提示項
  /u:卸載已安裝的控件或DLL文件
  /n:不使用DLLRegisterServer,要注意這個參數應與/i一同使用
  /i:使用DLLInstall,並給其傳送一個可選的[ cmdline ];當使用/u時用來卸載DLL

Regsvr32 /u shimgvw.dll 卸載圖片和傳真檢視器
Regsvr32 /u zipfldr.dll 卸載ZIP資料夾顯示功能
Regsvr32 /u cabview.dll 卸載CAB檔案支持
Regsvr32 /u shmedia.dll 卸載影像預覽功能
Regsvr32 /u wmpdxm.dll 卸載網頁用WMP播放媒體功能


去除安裝msn8後 我的電腦 中出現的資料夾

regsvr32 /u C:\PROGRA~1\MSNMES~1\fsshext.dll
去掉/U參數,如Regsvr32 shmedia.dll 又可以將影像預覽功能重新註冊上。依此類推
psac 目前離線  
送花文章: 3, 收花文章: 1631 篇, 收花: 3205 次
 



發表規則
不可以發文
不可以回覆主題
不可以上傳附加檔案
不可以編輯您的文章

論壇啟用 BB 語法
論壇啟用 表情符號
論壇啟用 [IMG] 語法
論壇禁用 HTML 語法
Trackbacks are 禁用
Pingbacks are 禁用
Refbacks are 禁用


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


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


SEO by vBSEO 3.6.1