關於 Vista 註冊 ActiveX 元件的問題
關於 Vista 註冊 ActiveX 元件的問題
前陣子有PM反應,某 "場子" 進了 Vista 作業系統,而系統 ( VB6 開發的 ) 無法執行..
為此花了點時間做測試,發現是ActiveX元件註冊的問題,底下 Po 出解決方式供大家參考
關於在 Vista 中使用 Regsvr32 註冊 ActiveX ( DLL、OCX ) 元件時 , 會出現錯誤 :
呼叫 DllRegisterServer 失敗,錯誤碼為 0x80004005。
圖:
解決方案1 :
l [ 控制台 ] -> [ 系統管理工具 ] -> [ 本機安全性原則 ]
PS: 或 [ 開始 ] -> [ 執行 ] ( 或Windows Key + R ) , 打 SECPOL.MSC [ Enter ]
[ 本機原則 ] -> [ 安全性選項 ] -> [ 使用者帳戶控制 ]
將 " 使用者帳戶控制 " 相關的 都設定 " 停用 " 或 " 提高權限不提示 "
注意 : Business、Ultimate、Enterprise 版本才有 [ 本機安全性原則 ] ( SecPol.msc )
Starter、Home Basic、Home Premium 版本 請參照 解決方案2
' ================================================================
解決方案2 :
將底下檔案存成 XXX.Reg 的文字檔 , 並執行它
Windows Registry Editor Version 5.00 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System] "ConsentPromptBehaviorAdmin"=dword:00000000 "ConsentPromptBehaviorUser"=dword:00000001 "EnableInstallerDetection"=dword:00000000 "EnableLUA"=dword:00000000 "EnableSecureUIAPaths"=dword:00000000 "EnableVirtualization"=dword:00000000 "PromptOnSecureDesktop"=dword:00000000 "ValidateAdminCodeSignatures"=dword:00000000 "dontdisplaylastusername"=dword:00000000 "legalnoticecaption"="" "legalnoticetext"="" "scforceoption"=dword:00000000 "shutdownwithoutlogon"=dword:00000001 "undockwithoutlogon"=dword:00000001 "FilterAdministratorToken"=dword:00000000 |
' ================================================================
l 之後即可使用 RegSvr32 註冊 ActiveX 元件 ( 需要 Administrator 的權限 )
若登入 User 不是 Administrator , 可使用 RunAs 命令以系統管理員的身份啟動程式 , 如下 :