DllImport在Windows XP SP3上失败,但在Windows 7上工作

前夕

我从此网站http://www.codeproject.com/Articles/9826/How-to-create-a-DLL-library-in-C-and-then-use-it-w创建了一个示例应用程序。C代码并在C#应用程序中使用。

 #include <stdio.h>

 extern "C"
 {
  __declspec(dllexport) void DisplayHelloFromDLL()
   {
   printf("Hello from DLL !\n");
   }
 }

C#代码:

using System;
using System.Runtime.InteropServices;     // DLL support

class HelloWorld
{
  [DllImport("TestLib.dll")]
  public static extern void DisplayHelloFromDLL ();

  static void Main ()
  {
    Console.WriteLine ("This is C# program");
    DisplayHelloFromDLL ();
  }
}

这在Windows 7上运行良好。我已在Windows 7计算机上的Visual Studio 2010上构建了代码。当我尝试在Windows XP上运行exe时,它失败并抛出以下异常:无法加载DLL'TestLib.dll':找不到指定的模块。(来自HRESULT的异常:0x8007007E)

大卫·赫弗南(David Heffernan)

最可能的解释(可能性接近1)是Windows 7计算机安装了MSVC运行时,而XP计算机没有安装。

下载VS2010 MSVC运行时的可再发行组件,并将其安装在XP计算机上。然后,您的代码应该可以工作了。Windows 7计算机上已经存在运行时,因为这是您的开发计算机。

FWIW,您的p /调用不完全正确。它无法指定调用约定。它应该是:

[DllImport("TestLib.dll", CallingConvention=CallingConvention.Cdecl)]
public static extern void DisplayHelloFromDLL();

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

是否可以使Windows XP SP3 Hyper-V虚拟机在Windows 10 Pro上正常工作?

来自分类Dev

如何使BitBucket在Windows XP操作系统上工作?

来自分类Dev

使Node在Windows 7 Enterprise上工作

来自分类Dev

Windows XP SP3安装产品密钥

来自分类Dev

Windows XP SP3无法浏览https网站

来自分类Dev

工作组连接问题(Windows XP和Windows 7)

来自分类Dev

Windows XP 系统还原如何在双启动 PC 上工作?

来自分类Dev

Windows XP VM或Windows 7 VM?

来自分类Dev

Windows 7比Windows XP使用多少RAM?

来自分类Dev

Windows XP VM或Windows 7 VM?

来自分类Dev

是否可以在Windows XP / Vista / 7上运行GNOME 3?

来自分类Dev

2014年4月8日之后是否可以激活Windows XP(SP3)?

来自分类Dev

PDF-XChange Viewer,pdflatex,Windows XP Pro SP3

来自分类Dev

在Windows XP(SP3)中恢复后,如何诊断冻结的原因?

来自分类Dev

Windows XP Professional SP3中的启动文件夹在哪里?

来自分类Dev

Windows XP SP3的常规安装是否包括Visual C ++ 2005运行时?

来自分类Dev

VirtualBox XP SP3 来宾不能在 Windows 10 中运行?

来自分类Dev

nodejs使用require js在windows容器上失败,但在windows主机上工作

来自分类Dev

Windows XP上的TPL

来自分类Dev

Docker在Linux机器上工作,但在Windows机器上工作

来自分类Dev

使用Windows 7 XP模式进行游戏

来自分类Dev

具有无效密钥的Windows XP SP1,具有有效密钥的Windows XP SP3升级

来自分类Dev

Google驱动器错误“请选择未通过网络安装的ntfs驱动器上的文件夹。” Windows XP SP3

来自分类Dev

Windows XP Home SP3 Windows Update无法运行,挂在“正在检查计算机的最新更新...”处。

来自分类Dev

通过Windows 7上的Cygwin使Rsync 3.0.9在Vagrant VM盒上工作

来自分类Dev

Windows XP SP3中Nvidia Quadro NVS 450的2D / DirectX性能不佳

来自分类Dev

Windows XP Pro SP3无法使用DNS名称ping我们的DNS服务器

来自分类Dev

Windows XP SP3将默认管理员保留为唯一管理员

来自分类Dev

Application will not run on windows xp

Related 相关文章

  1. 1

    是否可以使Windows XP SP3 Hyper-V虚拟机在Windows 10 Pro上正常工作?

  2. 2

    如何使BitBucket在Windows XP操作系统上工作?

  3. 3

    使Node在Windows 7 Enterprise上工作

  4. 4

    Windows XP SP3安装产品密钥

  5. 5

    Windows XP SP3无法浏览https网站

  6. 6

    工作组连接问题(Windows XP和Windows 7)

  7. 7

    Windows XP 系统还原如何在双启动 PC 上工作?

  8. 8

    Windows XP VM或Windows 7 VM?

  9. 9

    Windows 7比Windows XP使用多少RAM?

  10. 10

    Windows XP VM或Windows 7 VM?

  11. 11

    是否可以在Windows XP / Vista / 7上运行GNOME 3?

  12. 12

    2014年4月8日之后是否可以激活Windows XP(SP3)?

  13. 13

    PDF-XChange Viewer,pdflatex,Windows XP Pro SP3

  14. 14

    在Windows XP(SP3)中恢复后,如何诊断冻结的原因?

  15. 15

    Windows XP Professional SP3中的启动文件夹在哪里?

  16. 16

    Windows XP SP3的常规安装是否包括Visual C ++ 2005运行时?

  17. 17

    VirtualBox XP SP3 来宾不能在 Windows 10 中运行?

  18. 18

    nodejs使用require js在windows容器上失败,但在windows主机上工作

  19. 19

    Windows XP上的TPL

  20. 20

    Docker在Linux机器上工作,但在Windows机器上工作

  21. 21

    使用Windows 7 XP模式进行游戏

  22. 22

    具有无效密钥的Windows XP SP1,具有有效密钥的Windows XP SP3升级

  23. 23

    Google驱动器错误“请选择未通过网络安装的ntfs驱动器上的文件夹。” Windows XP SP3

  24. 24

    Windows XP Home SP3 Windows Update无法运行,挂在“正在检查计算机的最新更新...”处。

  25. 25

    通过Windows 7上的Cygwin使Rsync 3.0.9在Vagrant VM盒上工作

  26. 26

    Windows XP SP3中Nvidia Quadro NVS 450的2D / DirectX性能不佳

  27. 27

    Windows XP Pro SP3无法使用DNS名称ping我们的DNS服务器

  28. 28

    Windows XP SP3将默认管理员保留为唯一管理员

  29. 29

    Application will not run on windows xp

热门标签

归档