为 64 位操作系统包装 32 位 dll 以使用 regsvr32.exe

wrap 32 bit dll for 64 bit operating system to work with regsvr32.exe(为 64 位操作系统包装 32 位 dll 以使用 regsvr32.exe)
本文介绍了为 64 位操作系统包装 32 位 dll 以使用 regsvr32.exe的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我们目前正在将我们的网站从 Windows 2003(32 位)转移到 Windows 2008(64 位)并且遇到了问题.

We are currently transferring our websites from Windows 2003 (32-bit) to Windows 2008 (64-bit) and have hit a problem.

我们的一个网站使用支付网关 HSBC CPI,它需要注册一个 DLL (regsvr32.exe),然后这个 DLL 在一个经典的 asp 网站中使用.问题是 DLL 是 32 位 DLL,因此它不会在 Windows 2008 操作系统中注册.

One of our website use the payment gateway HSBC CPI which requires a DLL to be registered(regsvr32.exe), this DLL is then used inside a classic asp website. The problem is the DLL is a 32-bit DLL and so it will not register with the the Windows 2008 operating system.

有没有办法可以将这个 32 位 dll 包装在 c#.net 项目中,以便公开它的方法并可以在操作系统中注册?

Is there a way we can wrap this 32 bit dll in a c#.net project so that it's methods are exposed and can be registerd with the OS?

非常感谢任何帮助.

推荐答案

您可以使用 C:WindowsSysWOW64 文件夹中的 regsvr32.exe 注册 DLL.

You can register the DLL with regsvr32.exe from the C:WindowsSysWOW64 folder.

但是,由于您不能混合 64/32 位代码,因此您必须创建一个在 x86 中运行的 C# 服务(请参阅项目属性、平台目标),然后您可以通过 WCF 从您的 x64 Web 应用程序中使用该服务.

However since you can't mix 64/32bit code you'd have to create a C# service running in x86 (see the project properties, platform target) that you can then use from your x64 web app via WCF.

更简单的选择是向 HSBC 索要 x64 dll.

An easier option would be to ask HSBC for a x64 dll.

这篇关于为 64 位操作系统包装 32 位 dll 以使用 regsvr32.exe的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

DispatcherQueue null when trying to update Ui property in ViewModel(尝试更新ViewModel中的Ui属性时DispatcherQueue为空)
Drawing over all windows on multiple monitors(在多个监视器上绘制所有窗口)
Programmatically show the desktop(以编程方式显示桌面)
c# Generic Setlt;Tgt; implementation to access objects by type(按类型访问对象的C#泛型集实现)
InvalidOperationException When using Context Injection in ASP.Net Core(在ASP.NET核心中使用上下文注入时发生InvalidOperationException)
LINQ many-to-many relationship, how to write a correct WHERE clause?(LINQ多对多关系,如何写一个正确的WHERE子句?)