问题标签 [regsvr32]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - COM 对象失败,类未注册错误,WMEncBasicEdit
我必须将 WMA 文件从开始位置剪切到结束位置。我正在尝试使用 WMEncoder。我已经安装了 Windows Media Encoder SDK 9 并为我的项目添加了对 WMEncoder 库的引用。但是当我试图创建 WMEncBasicEdit 类的新实例时,Visual Studio 会抛出异常 80040154。我的错在哪里?
windows - MSI 错误 - regsvr32 自定义操作失败
简短的
我有一个安装包(基于 MSI),它尝试注册一个 dll 文件以用作 Windows 资源管理器栏(Internet Explorer 工具栏)。
自定义操作定义如下:
错误
- regsvr32 自定义操作在 Windows XP 64 位上不起作用。
MSI 日志的输出:
CustomAction SystemFolder_2 返回实际错误代码 5。错误 1722。此 Windows 安装程序包有问题。作为设置的一部分运行的程序未按预期完成。操作 SystemFolder_2,位置:C:\Windows\SysWOW64\,命令:regsvr32.exe /s "C:\Program Files (x86)\Test Install\test.dll"
MSI (s) (10:F4):产品:测试安装 -- 错误 1722。此 Windows 安装程序包有问题。作为设置的一部分运行的程序未按预期完成。操作 SystemFolder_2,位置:C:\Windows\SysWOW64\,命令:regsvr32.exe /s "C:\Program Files (x86)\Test Install\test.dll"
到目前为止,我的测试/想法的简要说明:
- 自定义操作位于“InstallFinalize”部分,因此仅当文件被拖放到硬盘驱动器时才会运行。
- dll 文件没有损坏并且是有效的。
- Regsvr32 自定义操作在 Windows 7 32 位和 Windows XP 32 位上运行良好(和 MSI 安装)。
- Regsvr32 32 位版本在 64 位安装期间执行(应该如此)。
- Regsvr32 失败,错误代码为 5,即 ERROR_ACCESS_DENIED。
解决方案和思考
- 自注册 - 不使用 regsvr32 并使用我的 MSI 安装程序手动放置注册表项。
- 该 dll 是一个 Delphi COM dll,它使用 TRegistry 组件来注册自己。同样,我想不出为什么这不起作用的原因,因为它只是一个包装器,而只是一个想法。
希望我在这里展示了我的研究,不要浪费任何人的时间!
windows - 我的安装程序无法使用 E_ACCESSDENIED 注册 DLL,并且在资源管理器中查看时 DLL 有一个挂锁图标
我使用 Inno Setup 作为我的安装程序。安装程序未能注册 DLL。原来,regsvr32 失败,错误代码为 0x80070005,代表 E_ACCESSDENIED。当我在资源管理器中打开“C:\Program Files\MyProgram\”时,它显示了某种 UAC 对话框,要求提升权限来查看它。我注意到所有文件的图标上都有一个挂锁。这是我第一次看到这种挂锁。
我签入了 Process Explorer,安装程序是从普通用户帐户(具有提升的权限)启动的。
更新
我想补充一点,这个错误到目前为止只发生过一次。当我关闭安装程序并再次启动它(完全相同的可执行文件,我没有对其进行任何更改)时,一切正常,程序目录中的文件具有正常权限。这不是一个始终可重现的错误,更像是百万分之一的错误,但如果它在我的机器上发生过一次,它很可能也发生在用户的机器上。
asp-classic - Server.Create 对象失败错误
我正在调试一些旧的 ASP 代码并偶然发现以下错误:
Server.CreateObject 失败
这是我收到错误的代码行:
DBUtils.SQLExpression 位于哪里?我似乎无法在代码中找到对它的引用。它是如何设置的?
我的 bin 文件夹中确实有一个 DBUtils.dll,有没有办法查看 DLL 内部是否有 SQLEXpression 方法?
ocx - DLLRegisterServer 失败
我试图重新注册包含在我的项目中的 .ocx 文件。我收到此错误消息:
XXXX.ocx 中的 DllRegisterServer 失败。返回代码 0x8007007e。
我已经运行了depends.exe,并且依赖项似乎没有任何问题。我只在“IESHIMS.dll”和“WER.dll”旁边看到了问号图标,我认为这些图标可以忽略。“MPR.dll”得到一个红色框。根据 DependencyWalker 常见问题解答,这些错误是可以忽略的。除此之外,一切都很好。
我也以管理员权限运行了注册。
任何建议将不胜感激。
谢谢!
c# - 注册具有不同名称的 dll 版本
我按版本号命名我的 dll。当我的产品的一个版本被卸载并且安装的新版本运行时regasm /codebase dllname.dll
说它已完成但新的 dll 似乎没有注册。通过 regdllview.exe 查看旧的仍然注册并突出显示(因为该文件不再存在)。有谁知道如何解决这个问题?
谢谢
java - 在安装 Java 应用程序期间调用 regsvr32
我创建了一个 IconOverlay DLL 来显示文件夹上的图标。它充当整个应用程序的独立模块。应用程序的其余部分是用 Java 构建的。
如何在安装时运行 regsvr32 来注册 DLL 和/或在卸载时取消注册它。我想用安装程序来做。(带有 exe 文件或类似文件的 Java 应用程序)。
有任何想法吗?
谢谢
c++ - regsvr32 导致 CDatabase 析构函数在使用 SQL Native Client (v2005) 时挂起
我在 Visual Studio 2005 中有一个 C++ COM dll,它使用 SQL Server (v2000) 驱动程序连接到数据库 (SQL Server 2005)。我们的 DB 团队最近要求我们将 SQL Server 驱动程序从 SQL Server (v2000) 升级到 SQL Native Client (v2005) 或 SQL Server Native Client 10.0 (v2007)。
应用程序构建得很好。然后,当我在 DLL 上执行 regsvr32 命令为 COM 注册它时,应用程序挂起。当我通过代码进行调试时,我发现在主 APP(从 CWinApp 继承)的 InitInstance 中,应用程序使用存储过程将启动消息记录到数据库中。
调试该日志消息显示创建了一个执行存储过程的 CDatabase 对象。存储过程正确执行;消息被记录到数据库并且执行返回到 C++ 代码。然后,当 CDatabase 对象关闭时(通过调用 CDatabase::Close()),应用程序挂起。我调试了 CDatabase 代码,发现在 CDatabase::Close() 中调用了
正是在这个调用中,执行不返回。调试器返回到(运行)状态,没有任何返回。当我尝试执行 Debug -> Break All 时,我收到一条消息,指出没有正在运行的线程并且进程可能已死锁。
这仅在调用 REGSVR32 期间发生。如果我为 regsvr32 部分选择 Sql Server 驱动程序,然后将其更改为 Sql Native Client 或 Sql Server Native Client v10.0,则应用程序工作正常。
我也在与微软合作,但我们的时间不多了。任何帮助或想法将不胜感激!
谢谢,
asp.net - 模块“.dll”已加载,但未找到入口点
我有一个 DLL,当我运行应用程序时会导致错误。该错误表示该服务未注册。所以我regsvr32
使用 DLL 的名称运行命令。但这给了我一个错误,现在错误是:
模块“mydll.dll”已加载,但未找到入口点“DllRegisterServer”。
确保“mydll.dll”是有效的 DLL 或 OCX 文件,然后重试
我在 Windows 7 64 位上工作。在 Windows XP 上它工作正常!有人知道它可能是什么吗?谢谢!
dll - 注册 32 位和 64 位 DLL
我指的是这个线程
如何安装 32 位和 64 位版本的 COM DLL 和“自动选择”?
我们的情况完全相同。来自同一个项目的具有相同 CLSID 应用 ID 的命名空间扩展 Dll 32 位和 64 位。现在注册这两个 Dll 可以完美地工作。注销会带来一些错误。第一次注销有效,但第二次失败。因为我认为windows(?)认为DLL已经被注销......
这两个 Dll 需要不同的 CLSID 和/或 App ID 吗???
亲切的问候,迈克尔
编辑:这是 DllUnregisterServer 所做的: