C# 计划没有';看不到DLL文件

C# 计划没有';看不到DLL文件,c#,.net,winforms,dll,C#,.net,Winforms,Dll,我正在用C语言编写一个程序,我正在使用一个特殊的Dll文件来存储类和我正在使用的方法。在项目中,我添加了Dll文件作为参考,然后在代码处使用“library\u name”打印。在我正在制作的计算机上(visual studio在哪里),它可以完美地工作,在另一台计算机上工作也很好。但我的程序在第二台计算机上的虚拟机上无法运行。当我试图打开它时,出现了如下异常: “无法加载文件或程序集的spd_lib,版本=1.0.4244.21567,区域性=中性,PublicKeyToken=null”或其

我正在用C语言编写一个程序,我正在使用一个特殊的Dll文件来存储类和我正在使用的方法。在项目中,我添加了Dll文件作为参考,然后在代码处使用“library\u name”打印
。在我正在制作的计算机上(visual studio在哪里),它可以完美地工作,在另一台计算机上工作也很好。但我的程序在第二台计算机上的虚拟机上无法运行。当我试图打开它时,出现了如下异常:
“无法加载文件或程序集的spd_lib,版本=1.0.4244.21567,区域性=中性,PublicKeyToken=null”或其依赖项之一。系统找不到指定的文件。“

在某个地方,我读到
.csproj
文件有一个字符串,其中存储了所有项目的引用,因此我尝试修改它,并给出位于虚拟机上的库的绝对路径,但它无论如何都不工作,并且有相同的异常。您能推荐我一些处理方法吗


忘了说,我的程序在WInForms上,所以它完全可以在虚拟机上打开和工作,但当我按下按钮时(有一个事件,我声明了位于Dll文件中的类的对象)它发生了异常并崩溃。因此,我恐怕这不是.Net framework的问题:/

您托管应用程序的虚拟机是否安装了.Net framework?
安装visual studio时,您的计算机中安装了一些系统dll,但虚拟机可能缺少这些dll。

虚拟机上必须存在dll才能使您的程序正常工作。为此,您必须在visual studio首选项窗口中将其标记为“复制本地”
dll(选择引用时按F4)-执行此操作时,它将复制到bin文件夹(或发布应用程序时复制到任何其他文件夹)


如果它不起作用,您需要检查应用程序请求此文件的位置。对于此任务,您可以使用它,也可以使用它进行检查。

是的,它有一个.Net framework 4.0。并且程序没有找到唯一可以定位我需要的方法的库。忘了说,我的程序在WInForms上,因此它完全可以打开并工作,但当我预先ss按钮(有一个事件,我在其中声明位于Dll文件的类的对象)它出现异常并崩溃。因此,我恐怕这不是.Net framework问题:/好的,您是否对该类对象使用依赖项注入?不。我只是在类存储的位置使用此dll文件,而没有其他依赖项。您是否复制了整个
bin\Release
文件夹?是否尝试将其复制到machi上的其他位置ne并从那里启动它?您可以使用。仅对流程的视图进行筛选,并注意未找到文件的错误。Oliver,是的,我复制了所有bin\Release文件夹。实际上我也尝试复制了所有解决方案文件夹。但不幸的是,它仍然不起作用。因此,我将尝试使用您推荐的程序,谢谢!是的,我使用了““复制本地”设置,但仍然不起作用。我会尝试使用您推荐的程序来检查应用程序请求。Dziekuje!@Ramon也会关注错误的这一部分:“或者它的依赖项之一。”“可能是dll在那里,但“spd_lib”所需的dll之一丢失了。这很奇怪,但不是,它只有一个库,没有其他依赖项。我安装在虚拟机visual studio上,一切都神奇地开始工作!我不知道,为什么会这样,不应该这样,只是奇怪:/但谢谢你的帮助!因此,如果安装VS后一切正常,则必须对随VS一起提供的dll有一定的依赖性。我认为您应该做的(如果您想找到根本原因)是在进程监视器w/o VS和w/VS installed下运行,并比较跟踪。在那里你应该看到什么dll是有问题的。好的!谢谢你,波维尔!