标签: assemblies

无法加载{myassembly}导入的过程

当运行prorgam时,我似乎错过了一个库,当我启动项目的输出时,我在启动时遇到异常.

A first chance exception of type 'System.IO.FileLoadException' occurred in mscorlib.dll
An unhandled exception of type 'System.IO.FileLoadException' occurred in mscorlib.dll

Additional information: A procedure imported by 'my assembly, Version=xx.1.1.0, Culture=neutral, PublicKeyToken=7292581204d9e04a' could not be loaded.

'ScriptX.vshost.exe' (Managed): Loaded 'C:\WINDOWS\assembly\GAC_MSIL\System.Configuration\2.0.0.0__b03f5f7f11d50a3a\System.Configuration.dll', No symbols loaded.
Run Code Online (Sandbox Code Playgroud)

我的问题是:如何确定哪个库丢失,因为此时我无法看到传递给的值:

mscorlib.dll!System.AppDomain.ExecuteAssembly(string assemblyFile, System.Security.Policy.Evidence assemblySecurity, string[] args) + 0x3a bytes    
Run Code Online (Sandbox Code Playgroud)

c# debugging assemblies

23
推荐指数
3
解决办法
2万
查看次数

C#程序集,什么是程序集?

我正在尝试理解C#中的内部访问修饰符.我似乎无法理解装配是什么,以及我的程序的哪个部分保存在该装配中.我试图使它变得只有以下命名空间中的对象可访问变量:

namespace Engine.Entity
Run Code Online (Sandbox Code Playgroud)

有问题的变量是在该命名空间内的类中定义的,所以我假设如果我将其设置为内部,则只有该命名空间内的对象才能访问它.我看到程序集和名称空间是一体的,我不认为这是正确的.

c# assemblies internal

23
推荐指数
2
解决办法
9171
查看次数

预加载.NET程序集的好方法

在我的应用程序中,我需要在鼠标单击时显示一个表单.问题是表单在另一个程序集中,并且由于程序集加载的惰性,很可能在按下鼠标按钮时尚未加载程序集.因此,在表单最终出现之前,我所拥有的是非常明显的暂停.

通过调用new FormFromAnotherAssembly()我的初始化方法,我能够得到一个愚蠢的修复.那当然是照顾好事情,停顿不再存在,但它非常难看.我唯一喜欢这个解决方案的是,如果我想使用类似的东西,我不必弄乱我必须要做的路径和程序集名称Assembly.Load.

那么,如果我想确保在实际需要之前加载程序集,那么选择好的,强大的解决方案是什么?

提前致谢.

c# reflection assemblies

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

C# - 从项目的发布版本中排除单元测试

您通常如何分离代码库和相关的单元测试?我知道有人为单元测试创​​建了一个单独的项目,我个人觉得这个项目令人困惑且难以维护.另一方面,如果您将代码及其测试混合在一个项目中,您最终会得到与您的单元测试框架(无论是NUnit,MbUnit还是其他任何内容)相关的二进制文件以及您自己的二进制文件.

这对于调试很好,但是一旦我构建了发布版本,我真的不希望我的代码再次引用单元测试框架.

我找到的一个解决方案是将所有单元测试都包含在#if DEBUG - #endif指令中:当没有代码引用单元测试程序集时,编译器足够聪明,可以省略编译代码中的引用.

有没有其他(可能更舒适)的选择来实现类似的目标?

.net c# unit-testing assemblies reference

22
推荐指数
4
解决办法
7470
查看次数

Maven程序集 - 读取程序集时出错

我已经定义了一个个性化的jar-with-dependencies程序集描述符.但是,当我使用mvn assembly:assembly执行它时,我得到:

...
[INFO] META-INF/ already added, skipping
[INFO] META-INF/MANIFEST.MF already added, skipping
[INFO] javax/ already added, skipping
[INFO] META-INF/ already added, skipping
[INFO] META-INF/MANIFEST.MF already added, skipping
[INFO] META-INF/maven/ already added, skipping
[INFO] [assembly:assembly {execution: default-cli}]
[INFO] ------------------------------------------------------------------------
[ERROR] BUILD ERROR
[INFO] ------------------------------------------------------------------------
[INFO] Error reading assemblies: No assembly descriptors found.
Run Code Online (Sandbox Code Playgroud)

我的jar-with-dependencies.xml位于src/main/resources/assemblies /中.

我的汇编描述符如下:

<?xml version='1.0' encoding='UTF-8'?>
<assembly>
    <id>jar-with-dependencies</id>
    <formats>
        <format>jar</format>
    </formats>

    <dependencySets>
        <dependencySet>
            <scope>runtime</scope>
            <unpack>true</unpack>
            <unpackOptions>
                <excludes>
                    <exclude>**/LICENSE*</exclude>
                    <exclude>**/README*</exclude>
                </excludes>
            </unpackOptions>
        </dependencySet>
    </dependencySets>

    <fileSets> …
Run Code Online (Sandbox Code Playgroud)

plugins maven-2 assemblies maven-descriptor

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

.NET4:进程内并行执行说明

概述:我有兴趣了解更多关于.NET4"进程内并行执行"的程序集,并需要其他信息来帮助我揭开它的神秘面纱.

动机:有问题的应用程序是针对.NET2构建的,并使用两个也可以对抗.NET2的第三方库.应用程序部署(通过文件复制)到包含.NET2的虚拟环境中的客户端计算机. 不是我的建筑,请耐心等待.

目标:要查看是否有可能像以前一样重新构建应用程序组件(或子集)对.NET4并销售应用程序,而无需改变第三方库和包括.NET4客户端配置文件(如描述这里的部署) .

采取的步骤:阅读了以下文章,但没有提供足够的信息:

  1. 进程内并行执行:浏览本文,方案二是最接近描述类似于我的情况的东西,但并没有真正涵盖任何深度.

  2. ASP.NET并行执行概述:本文涉及Web应用程序,但我正在处理客户端WinForms应用程序.

  3. CLR团队博客:进程内并排:这有助于解释.NET4下托管进程的插件是如何运行的,但我不知道这是否适用于第三方库.

进一步的步骤:我也不清楚如何继续将单个.NET2程序集升级到.NET4,可执行文件保留在.NET2中(即如何配置解决方案/项目文件,如果需要包含任何特殊代码,等等).

.net c# assemblies process .net-4.0

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

Web.config中的程序集

我已经进行了大约一年的.NET开发,但我仍然不知道该<assemblies>部分的目的是什么.

该部分的目的是什么?我可以删除那里指定的程序集吗?我问过团队中的一些高级开发人员,但他们只是告诉我要忽略它.有人可以给我一个很好的解释吗?

c# asp.net-mvc assemblies web-config

22
推荐指数
1
解决办法
2万
查看次数

考虑app.config重新映射没有app.config映射的程序集

如何在不添加绑定到app.config的情况下确定修改此引用的位置?

Consider app.config remapping of assembly "System.Runtime.Serialization.Primitives, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" from Version "4.1.1.0" [] to Version "4.1.2.0" [F:\Production\packages\System.Runtime.Serialization.Primitives.4.3.0\lib\net46\System.Runtime.Serialization.Primitives.dll] to solve conflict and get rid of warning. 12>C:\Program Files (x86)\MSBuild\14.0\bin\Microsoft.Common.CurrentVersion.targets(1820,5): warning MSB3247: Found conflicts between different versions of the same dependent assembly. In Visual Studio, double-click this warning (or select it and press Enter) to fix the conflicts; otherwise, add the following binding redirects to the "runtime" node in the application configuration file:

.net assemblies visual-studio nuget

22
推荐指数
3
解决办法
2万
查看次数

在Visual Studio 2008中使用特定版本引用

我有一个程序集Foo,它引用了程序集栏(版本XXX2000).在属性中,特定版本设置为False.我的本地GAC中有Bar(xxx2000)和Bar(xxx1000).一切都好.

在另一台机器上,GAC中没有Bar的版本,但Bar(xxx1000)与Foo位于同一目录中,运行Foo将失败,声称无法找到Barr(xxx2000)

无法加载文件或程序集'Bar,Version = xxx2000,Culture = neutral,PublicKeyToken = YXYXYXYXXYX'或其依赖项之一.定位的程序集的清单定义与程序集引用不匹配.(HRESULT异常:0x80131040)

不应该使用Bar(xxx1000),因为特定版本设置为False或我错过了什么?

也许我没有得到具体版本的确如何运作.

关于Stack Overflow的特定版本引用还有一些其他问题,但没有一个对我有任何帮助.

编辑

进一步阅读:http://www.code-magazine.com/article.aspx?quickid = 0507041&page = 3

.net assemblies reference visual-studio-2008

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

如何在Visual Studio中组织大型项目的F#源(> 300个类)?

在C#中,您可以将文件放在与其命名空间相对应的文件夹中,并在解决方案资源管理器中查看它们.

在F#中,似乎我必须将所有内容放在简单有序的列表中进行编译.当我达到~300级的规模时,它会让人感到有些困惑和混乱,我开始羡慕C#,并认为它可能是类型推断的代价.

有没有比拆分成几个组件更好的选择?

由F#编译器的源来看它的路线,他们已经采取,但我有互联组件(控制器视图,> 300类 - - 视图模型)的相当大的系统,我想是因为在循环依赖的一个组件,即使在接口水平.

我应该忘记一个文件 - 一个类并创建一些巨大的文件?(例如,在F#编译器中,您有几个100kb到300kb范围内的源文件,并且有些自动生成1Mb左右!)

您对大型F#项目的体验是什么?

f# assemblies code-organization visual-studio c#-to-f#

21
推荐指数
2
解决办法
3161
查看次数