【问题标题】:How to Use VC++ dll into a c# application如何在 C# 应用程序中使用 VC++ dll
【发布时间】:2012-08-21 18:47:43
【问题描述】:

我已经复制了链接显示的确切过程:

http://www.codeproject.com/Articles/9826/How-to-create-a-DLL-library-in-C-and-then-use-it-w

我已经开发并构建了一个 vc++ dll 项目并且构建并成功了。现在我的问题是 dll 将保存在创建的 Vc++ 项目中的什么位置。我在 debud 文件夹中搜索了没有 dll 文件。只有当我将 dll 复制粘贴到 bin 文件夹中时,我才能将 dll 引用到我的 C# 应用程序中(由链接指定)

请帮我解决这个问题

【问题讨论】:

    标签: visual-c++ unmanaged dllimport


    【解决方案1】:

    通过右键单击项目(在解决方案资源管理器中)并从上下文菜单中选择属性...来检查 VC++ DLL 项目的属性。

    在属性对话框的树形控件中选择:配置属性|一般

    现在,屏幕右侧的第一个条目是输出目录。这是你的输出应该在的地方,包括 DLL。

    【讨论】:

    • 感谢罗斯。输出目录显示如下:$(SolutionDir)$(ConfigurationName)。那么 dll 的路径可能是什么?
    • $(SolutionDir) 是您的解决方案所在的文件夹。$(ConfigurationName) 可能是 Debug 或 Release,具体取决于您构建的内容。您始终可以使用 Windows 搜索功能来查找 *.dll
    • 是的,谢谢!我找到了dll。但是我已经复制了 dll 并粘贴到 c# 的调试文件夹中,当我运行它显示以下错误:尝试加载格式不正确的程序。 (HRESULT 异常:0x8007000B)
    • 来自forums.asp.net/t/1729295.aspx/1:“这个错误表明你正在尝试将一个32位的dll加载到一个64位的进程中。下面的两个帖子都讨论了这个问题:social.msdn.microsoft.com/Forums/en-US/netfx64bit/thread/…social.msdn.microsoft.com/Forums/en/netfxsetup/thread/…”跨度>
    • 是的!我对 vs2010 进行了同样的尝试,效果很好。非常感谢。
    猜你喜欢
    • 1970-01-01
    • 2023-03-12
    • 2014-01-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-08
    相关资源
    最近更新 更多