不时弹出以下错误:C:\ProgramFiles\MSBuild\Microsoft\VisualStudio\v9.0\TeamTest\Microsoft.TeamTest.targets(14,5):错误:API限制:程序集'file:///C:\ProgramFiles\MicrosoftVisualStudio9.0\Common7\IDE\PublicAssemblies\Microsoft.VisualStudio.QualityTools.UnitTestFramework.dll'已从其他位置加载。它不能从同一应用程序域内的新位置加载。我该如何摆脱它?
我有一个现有的应用程序,它P/调用与应用程序本身位于同一目录中的DLL。现在(由于佳能生产了最糟糕的API之一)我需要支持该API的两个版本并在运行时确定我应该使用哪一个(旧的或新的)。由于DLL具有相同的名称(第一个加载具有相同名称的其他DLL,因此仅重命名第一个对我没有帮助)我必须将它们保存在不同的目录中。因此我的问题是:我必须使用哪些选项来控制DllImport声明中给出的DLL使用的目录?我想我可以从尝试这两个想法中的任何一个开始:1)在执行第一个P/Invoke之前使用“SetDllDirectory”设置我想要的目录,然后在之后重置它。2)使用“LoadLibraryEx”
这个问题在这里已经有了答案:IsispossibletoexportfunctionsfromaC#DLLlikeinVSC++?(4个答案)关闭6年前。我有一个用C#编写的.net程序集,我希望从该程序集中导出nativeC函数。我有一个应用程序,它将对在“插件”文件夹中找到的任何DLL执行“LoadLibrary()”。加载DLL后,应用程序执行“GetProcAddress”以查找名为“Register”的函数。应用程序希望此函数遵循C调用约定。如何从我的.net程序集中导出名为“Register”的函数,以便我可以成功连接到此应用程序的插件系统?谢谢,安德鲁
我有一个项目必须在64位模式下编译和运行。不幸的是,我需要调用仅在32位模式下可用的DLL,因此我无法将所有内容都放在一个1VisualStudio项目中。我正在努力寻找将32位DLL包装在其自己的exe/服务中并从我的64位应用程序发出对该exe/服务的远程(尽管在同一台机器上)调用的最佳方法。我的操作系统是Win7Pro64位。此32位进程所需的调用是每秒几十次,但数据量很小。这是一个实时图像分析应用程序,因此尽管数量很少,但响应时间至关重要。大量发送/接收单个原语。理想情况下,我会托管一个WCF服务来容纳这个DLL,但在64位操作系统中,不能强制该服务以x86运行!Source.
Microsoft最近表示它是平台中立的,因此我尝试仅使用VSCode在Mac和Linux上构建并部署到Azure。为什么?主要是为了证明我可以。我们的项目有几个部分,包括几个不同的网站、一个WebAPI、erAPI和其他一些部分。在我的Mac上,我构建了一个.Net核心类库,其中包含大量对象。命令行、dotnet构建、DLL输出,没问题。我想将该DLL放在正在构建MVC网站的Linux机器上——希望这些对象构成该网站的模型部分。我不知道如何让网站项目引用我的DLL并使用这些对象。我假设我将它复制到另一台机器,将它放在正在开发的站点的bin文件夹中,并在该站点的project.json
如何处理使用pinvoke从C#调用的dll方法中的可选struct参数?例如,lpSecurityAttributesparameterhere不存在时应传递null。传递struct的正确方法似乎是使用ref,但它不能有可选参数,或者通常采用null.有什么方法可以实现? 最佳答案 你有几个选择1)使用class而不是struct我觉得这个方法最简单。只需声明struct作为class:[StructLayout(LayoutKind.Sequential)]publicclassCStruct{//member-list}然后
我遇到了一个非常令人沮丧的silverlight插件崩溃,它同时影响IE和firefox。事件日志中的错误是:Faultingapplicationname:iexplore.exe,version:9.0.8112.16421,timestamp:0x4d76255dFaultingmodulename:npctrl.dll,version:5.0.61118.0,timestamp:0x4ec5fc64Exceptioncode:0xc0000094Faultoffset:0x0001d720Faultingprocessid:0x434Faultingapplicationsta
关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以便用事实和引用来回答。关闭6年前。Improvethisquestion我想问您是否知道一些计算CK指标(主要是圈复杂度)的免费C#库(dll)。我计划做的项目需要它。我知道已经有一些完成的解决方案可以计算CK指标并以各种形式显示给您,但我需要的是可以在我的应用程序中使用的解决方案。所以在开始自己写之前,我首先想问问你。谢谢
基本上我有一个程序,当它开始时加载一个文件列表(如FileInfo),并为列表中的每个文件加载一个XML文档(如XDocument).程序然后从其中读取数据到容器类(存储为IEnumerables),此时XDocument超出范围。程序然后将数据从容器类导出到数据库。然而,在导出容器类超出范围后,垃圾收集器并未清理容器类,因为它存储为IEnumerable,似乎导致了XDocument留在内存中(不确定这是否是原因,但任务管理器显示XDocument中的内存未被释放)。由于程序循环遍历多个文件,最终程序抛出内存不足异常。为了缓解这种情况,我最终使用了System.GC.Collect(
我已经将C#代码编译成一个DLL,但对它们没有什么经验。我的C#代码包含一个带有静态方法Print()的类HelloWorld。我想在VBScript中使用这个DLL来调用方法Print()。我知道这是基础,但我将其用作对最终将编译为DLL的更大规模项目的测试。声明看起来像什么,方法调用看起来如何? 最佳答案 重要:只有当DLL公开COM接口(interface)时,这两种方法才有效。如果您的dll已在系统中注册,请使用CreateObject及其ProgID。SetmyObject=CreateObject("MyReallyCo