相关疑难解决方法(0)

将非托管dll嵌入到托管C#dll中

我有一个使用DLLImport使用非托管C++ DLL的托管C#dll.一切都很好.但是,我想在我的托管DLL中嵌入非托管DLL,如Microsoft解释:

http://msdn.microsoft.com/en-us/library/system.runtime.interopservices.dllimportattribute.dllimportattribute.aspx

所以我将非托管dll文件添加到我的托管dll项目,将属性设置为'Embedded Resource'并将DLLImport修改为:

[DllImport("Unmanaged Driver.dll, Wrapper Engine, Version=1.0.0.0,
Culture=neutral, PublicKeyToken=null",
CallingConvention = CallingConvention.Winapi)]
Run Code Online (Sandbox Code Playgroud)

其中'Wrapper Engine'是我托管DLL的程序集名称'Unmanaged Driver.dll'是非托管DLL

当我跑步时,我得到:

访问被拒绝.(HRESULT异常:0x80070005(E_ACCESSDENIED))

我从MSDN和http://blogs.msdn.com/suzcook/看到了这应该是可能的......

c# unmanaged managed dllimport

82
推荐指数
4
解决办法
6万
查看次数

在Visual C#2010中将DLL嵌入到.exe中

我正在使用一个使用iTextSharp.dll和WebCam_Capture.dll的C#程序.当我构建程序时,它会在调试文件夹中创建可执行文件,并且它还会按预期将这两个dll复制到调试文件夹中.我想将它们合并为一个可执行文件,但是我失败了.这两个库在解决方案资源管理器中的引用中可见.我还将它们添加为资源.可执行文件大小变得更大,等于三个文件的总和,但是可执行文件仍然需要在其目录中使用这些库...我使用资源文件的"构建操作"属性但没有更改.我也试过ILmerge,但它给了我一个错误.所以我该怎么做?

更新:这是我从ILmerge得到的:

An exception occurred during merging:
Unresolved assembly reference not allowed: System.Core.
at System.Compiler.Ir2md.GetAssemblyRefIndex(AssemblyNode assembly)
   at System.Compiler.Ir2md.GetTypeRefIndex(TypeNode type)
Run Code Online (Sandbox Code Playgroud)

顺便说一句,这只是一个Windows应用程序,一个表格将被填写并打印为pdf,并通过网络摄像头拍照(如果有的话).谢谢大家!

c# embed dll itextsharp

14
推荐指数
3
解决办法
4万
查看次数

我可以在exe中包含dll(在Visual Studio中)吗?

可能重复:
.NET Windows应用程序,它可以压缩成单个.exe吗?

要运行我需要的应用程序AxInterop.WMPLib.dll,Interop.WMPLib.dll它位于Debug和Release文件夹中.有没有办法将这些dll包含在exe中,所以我的应用程序只能在一个文件中使用?

dll release exec include visual-studio

12
推荐指数
1
解决办法
3万
查看次数

创建一个独立的.exe文件

我有一个在Visual Studio 2010中构建的控制台应用程序.

当我实际构建项目时,我得到\ bin\Debug\MyProj.exe下的.exe文件.

当我粘贴并从其他位置运行此.exe时,它也期待其他文件.

有什么想法我怎么能把它作为独立的exe文件.

c# console-application visual-studio-2010

5
推荐指数
1
解决办法
4万
查看次数

在exe中包含dll?

可能重复:
.NET Windows应用程序,它可以压缩成单个.exe吗?

我有一个依赖于几个dll的项目,一旦我编译它,它需要我在与dll相同的文件夹中运行.exe.我可以将它们打包在一起,所以我不必这样做吗?

作为参考,我正在使用C#

c# dll .net-3.5

1
推荐指数
1
解决办法
954
查看次数