gpt4 book ai didi

c# - 如果我在 win 7 64 位上用 C# 创建一个 dll 然后想在 WinXP 32 位上使用,会有一些不一致吗?

转载 作者:太空宇宙 更新时间:2023-11-03 15:26:19 24 4
gpt4 key购买 nike

我试图在 Win7 64 位上用 C# 开发一个 DLL,然后使用 VB6 WinXP 32 位,但是当在 VB6 中添加库时,我得到错误 429,“ActiveX 组件无法创建对象”。所以想问问有没有可能和WinXP 32bit不兼容?

我正在按照这篇文章的步骤创建 DLL:http://www.codeproject.com/Articles/3511/Exposing-NET-Components-to-COM

有人可以帮帮我吗?

编辑:

我试着做下一站来解决我的问题,但没有人能解决:

  1. 在我的 winXP 上安装所有版本的 .NET 框架。
  2. 尝试使用 regasm 注册我的 dll 并添加/代码库。
  3. 尝试删除 ie8 并返回到 ie7。
  4. 将 dll 编译为 x86 而不是任何 cpu。

谢谢你,对不起我的英语! :-)

最佳答案

终于可以解决我的问题了。我必须遵循的步骤是:

  • 在 WinXP-32 位的 NET 工具命令行中:

    1. 编译 NET 模块。 csc/target:module test.cs
    2. 生成 key 。 sn -k myDLL.snk
    3. 将 key 附在模块上。 al/out:myDLL.dll myDLL.netmodule/keyfile:myDLL.snk
    4. 将我的 DLL 添加到 GAC。 gacutil/i myDLL.dll
    5. 注册我的 DLL。 regasm/codebase/tlb:myDLL.tlb myDLL.dll
  • 在 VB6 中:

    1. 创建一个新的标准 exe。
    2. 在项目中添加引用 -> 引用 -> 搜索 -> myDLL.dll
    3. 使用下一个代码:

      Dim tst 作为 myDLL.test
      设置 tst = 新建 myDLL.test
      tst.sayHello

这就是我所有的 friend !我花了很长时间但在这里我与你分享!谢谢!

关于c# - 如果我在 win 7 64 位上用 C# 创建一个 dll 然后想在 WinXP 32 位上使用,会有一些不一致吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35188590/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com