首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

VS:程序集"<assembly>"被错误地指定为文件.

相关·内容

解决T4模板的程序引用的五种方案

如果你编写T4模板,你不得不面对一个问题——如何引用一个程序VS 2010采用了与VS2008不同的程序引用的解析机制。本篇文章为你介绍在VS2010下5种不同的程序引用的方式。...在VS 2008环境下,你只需要为当前项目添加相应的程序引用,并且通过指令的name属性指定程序(Dll)的文件名即可。...没错,这是一种解决方案,如果引用的程序具有强签名的话。有一点需要注意的是,T4模板引用某个安装于GAC的程序的时候,在指令下不能指定文件扩展名(.dll)。...如果将Artech.T4AssemblyRefResovle.Foo.dll拷贝到该目录下,你在T4模板的指令下就可以直接指定程序名称(不包括扩展名)或者程序文件名(包括扩展名...=".cs" #> public class HelloWorld {} 四、指定程序的具体路径 如果引用的程序没有签名,GAC的方式则不能使用,在这种情况下你需要指定程序文件所在的位置,最直接的当然就是指定程序文件的绝对路径

83370

编写T4模板进行代码生成无法避免的两个话题:Assembly Locking&Debug

目录 一、程序引用导致的编译问题 二、T4引擎对引用程序的锁定 三、Debugger.Break导致VS 2010的Crash 四、在Debugger.Break...所以,HelloWorld.tt模板文件中需要通过指令引用Lib项目编译生成的程序(Artech.T4Template.Lib.dll)。...如果你看过我上一篇文章,你应该知道我们至少具有解决T4模板的程序引用的五种方案,在这里我们采用的是VS宏的解决方案,即将引用程序文件的路径设置成通过$(SolutionDir)表示的解决方案目录的相对路径..., ""); } } 当你保存该T4模板,T4引擎将触发并进行代码生成工作,但是此时如果你试图编译引用(实际上是生成的程序引用...由于该AppDomain不会自动卸载,这就会导致该AppDomain始终锁定所有它加载的程序。如果我们需要释放程序,我们不得不重启VS

96180
  • 上位机开发二----第一个程序hallo world

    这里我们双击窗体界面,这也是VS的特性,双击一个控件,就会进入对应代码文件部分,这些代码全由VS在生成项目时自动生成,下面进行详细的解释: 1 /*filename:Form1.cs*/ 2 //使用命名空间...最关键的一点,这里类也是用partial关键字修饰的,可以看到,Partial是局部类型的意思,允许我们将一个类、结构或接口分成几个部分,分别实现在几个不同的.cs文件中,用partial定义的类可以在多个地方定义...更改这些特性值可修改 // 与程序关联的信息。...-a2eb-857135be4d2c")] // 程序的版本信息由下列四个值组成: // // 主版本 // 次版本 // 生成号 // 修订号 // //...在VS中很方便,只需要双击这个控件,VS就会自动将该控件的事件处理函数添加进Form1.cs文件,此处我先双击“Send”按钮,可以看到VS自动添加进了 private void button1_Click

    82742

    C#上位机开发(二)—— Hello,World

    这里我们双击窗体界面,这也是VS的特性,双击一个控件,就会进入对应代码文件部分,这些代码全由VS在生成项目时自动生成,下面进行详细的解释: 1 /*filename:Form1.cs*/ 2 //使用命名空间...最关键的一点,这里类也是用partial关键字修饰的,可以看到,Partial是局部类型的意思,允许我们将一个类、结构或接口分成几个部分,分别实现在几个不同的.cs文件中,用partial定义的类可以在多个地方定义...更改这些特性值可修改 // 与程序关联的信息。...-a2eb-857135be4d2c")] // 程序的版本信息由下列四个值组成: // // 主版本 // 次版本 // 生成号 // 修订号 // //...在VS中很方便,只需要双击这个控件,VS就会自动将该控件的事件处理函数添加进Form1.cs文件,此处我先双击“Send”按钮,可以看到VS自动添加进了 private void button1_Click

    2K41

    解析.NET对象的跨应用程序域访问(上篇)

    该方法接收三个参数,assemblyFile:包含要执行程序文件的名称;assemblySecurity:为程序提供的证据;args:程序的入口点的实参。该方法返回 程序的入口点返回的值。...这是类似于LoadFrom,除非你没有得到免费          ///通过融合查找已经存在的程序名称。 使用它可以更好控制汇编文件加载。...当您以这种方式加载程序时,不会有任何DLL文件的锁定。...注意,如果一个程序加载到内存中而没有调试符号,那么          /// image将被抛出。 警惕这个。...使用LoadBits方法加载程序不会锁定          /// DLL文件,因为整个程序加载到内存中并且文件句柄关闭。

    1.1K50

    .NET面试基础知识

    Internal对同一程序集中声明的所有类都可访问。例如,ClassA的InternlC可以在包含类ClassA的内部访问,也可以任何类ClassB和class .ses访问在同一个汇编程序集中。...例如,ClassA的ProtectedInternalE可以从同一程序a中的所有类ClassA、ClassB和ClassC访问,也可以从另一个程序b中的派生类类类访问。...例如,可以从程序a或程序b中的所有类访问ClassA的PublicF。 类型和类型成员的访问修饰符, 类型(类、结构、枚举、接口、委托等)只能有内部和公共访问修饰符。...Application domain 应用程序域为安全提供了应用程序的逻辑隔离边界。同一个应用程序的所有对象都在同一个应用程序域中创建。应用程序域在单个进程中保持程序的独立性。...流用于从大文件中读取数据。您可以读取小块的数据,其中大文件分解成小块。

    84320

    CopyLocal 之痛

    今天,我机子上好好的一个vs 2008的项目,拷到同事的机子上后,竟然不能运行,报“未能加载程序”的错误。一看才知道,所有的程序引用(除了System下的)的“复制本地”属性,都为false。...无奈,卸载项目,然后编辑csproj文件,发现每个引用下面,其实根本就没有指定CopyLocal属性! ?...重新加载项目,然后把它设成true,然后再打开csproj文件,发现多出来一个节点: ? 看来Private就是用来指定CopyLocal的值的了。如果没这个节点的话,vs会有一个默认值。...If the assembly is found in the global assembly cache, the value is false....,因为很有可能那里没有private节点,而你不能保证作者的vs默认的是什么,累啊。

    45440

    【AssemblyInfo.cs】为程序设置版本和帮助信息

    简介   当我们使用VS创建一个工程时,在【Properties】文件夹下会自动创建一个名为【AssemblyInfo.cs】的配置文件(如图 2-1所示),不懂其原理的还是建议使用VS自动生成该文件,...图 2-1 作用   AssemblyInfo.cs配置文件主要是通过特性来设置生成的有关程序的常规信息参数,如:程序名称、描述、所属公司等。...图 4-1   下面来详细解释各个特性的意义: //设置程序标题 [assembly: AssemblyTitle(".NET Pet Shop Model")] //设置程序描述信息 [assembly...程序在运行时不会使用该信息 [assembly: AssemblyConfiguration("")] //设置公司名称信息 [assembly: AssemblyCompany("Microsoft...图 4-2   此外,在VS中除了直接修改AssemblyInfo.cs文件来实现之外,还可以使用图形操作界面的形式来设置程序的常规信息。

    89530

    VS集成的若干种代码生成解决方案

    [阅读全文] [第6篇] 解决T4模板的程序引用的五种方案 如果你的T4模板需要调用一个自定义的类型,并且该类型定义在某个非系统程序集中,你就需要通过T4指令引用该程序...在VS 2008环境下,你只需要为当前项目添加相应的程序引用,并且通过指令的name属性指定程序(Dll)的文件名即可。...但是这种方式对于VS 2010则行不通,因为T4引擎在解析和编译模板的时候并不会从项目引用列表中去定位目标程序。...本篇文章为你介绍在VS2010下5种不同的程序引用的方式……[ 阅读全文] [第7篇] 编写T4模板进行代码生成无法避免的两个话题:"Assembly Locking"&"Debug" 出于提高性能考虑...由于该AppDomain不会自动卸载,这就会导致该AppDomain始终锁定所有它加载的程序。如果我们需要释放程序,我们不得不重启VS

    2.6K90

    Silverlight自定义类库实现应用程序缓存

    默认情况下,如果SL项目引用了一些其它程序(即通俗意义上的dll文件),在编译打包时,这些dll会全部打包到一个xap文件里,随着引用的dll文件越来越多,xap文件会越来越大。...勾上这个后,查看一下最终的ClientBin目录,会发现一些项目引用的其它程序,已经分离出来变成了zip文件 ?...步骤1:先为自己的SL类库程序(使用强名称)签名 这一步可以借助vs2010完成,见下图 ?...> 解释一下: name 为SL类库程序的完整名称 version 版本号(必须与AssemblyInfo.cs中的版本号一致) publickeytoken 这个东东可以通过...提示:如果您经过以上处理,vs.net仍然无法将程序分离成zip包,请检查项目的引用中,该程序的“复制本地”属性是否为false,如果不是,请更改为False ?

    86990

    unity3d 入门

    unity关联vs vscode直接加载文件夹,不要使用unity右键打开项目,unity2019bug导致vscode打开后没有界面,后才占用项目,不能右键打开。...文件夹,重新安装package manager中的包(之前是app store中的生成错误了,不删除不会刷新代码) 菜单栏出现cinemachie才能算成功 IO错误 权限问题,换个文件夹...(c盘权限问题) 异常捕获 vscode设置常用的nullReference异常,可以在资源为空的地方停止运行 package unity运行错误,提示文件asmdef文件找不到 在package...中搜索,找到后双击导入 asmdef文件文件的方式定义程序,package右键文件夹import(源码在\library\PackageCache下,生成的程序在\library\ScriptAssemblies...右键的方式打开,可找到文件夹打开 添加日志:Debug.LogError,Unity及时编译,unity > console点击后,出现错误自动暂停 the reference script

    3.6K20

    unity3d 入门

    unity关联vs vscode直接加载文件夹,不要使用unity右键打开项目,unity2019bug导致vscode打开后没有界面,后才占用项目,不能右键打开。...文件夹,重新安装package manager中的包(之前是app store中的生成错误了,不删除不会刷新代码) 菜单栏出现cinemachie才能算成功 IO错误 权限问题,换个文件夹...(c盘权限问题) 异常捕获 vscode设置常用的nullReference异常,可以在资源为空的地方停止运行 package unity运行错误,提示文件asmdef文件找不到 在package...中搜索,找到后双击导入 asmdef文件文件的方式定义程序,package右键文件夹import(源码在\library\PackageCache下,生成的程序在\library\ScriptAssemblies...右键的方式打开,可找到文件夹打开 添加日志:Debug.LogError,Unity及时编译,unity > console点击后,出现错误自动暂停 the reference script

    2.8K10

    C#反射机制

    其实,我们已经在不自觉使用它了,举个最简单的例子,当你在VS的设计器里拖入一个控件后,设计器会通过反射获取这个控件的属性,并提供你进行设置。那么,问题来了,为什么要用反射呢?...(1)使用Assembly定义和加载程序,加载在程序清单中列出模块,以及从此程序集中查找类型并创建该类型的实例。...介绍 Assembly类可以获得程序的信息,也可以动态的加载程序, 以及在程序集中查找类型信息,并创建该类型的实例。...使用Assembly类可以降低程序之间的耦合,有利于软件结构的合理化。...通过程序名称返回Assembly对象 Assembly ass = Assembly.Load("ClassLibrary831"); 通过DLL文件名称返回Assembly对象 Assembly

    19030

    《CLR via C#》Part1之Chapter3 共享程序和强命名程序(二)

    CLR支持两种程序:弱命名程序(weakly named assembly)和强命名程序(strongly named assembly). ?...由于弱类型程序总是私有部署的,所以当CLR在应用程序的基目录或者子目录中搜索程序文件时,只会使用程序的名称(添加一个.dll或者.exe)。...强类型程序则是由一个文件名、一个版本号和一个语言文化(culture),除此之外,强命名程序还使用发布者的私钥进行了签名。...创建强类型步骤: 使用Strong Name实用程序(SN.exe)来获取一个密钥。(这个程序与.NET Framework SDK和MS VS配套提供的。)Eg....VS2012中创建公钥/私钥文件,可显示项目属性,进入“签名”选项卡,勾选为“程序签名”,选择新建,如下图 ? 下面这幅图描述了CLR“对一个文件进行签名” ?

    50520

    MSIL学习------从HelloWorld开始

    .EXE文件,在这里需要什么VS的开发者工具(当然应该还有其它方式),   使用SCS语句进行编译 csc HelloWorld.cs   接下来使用ILDASM命令进行反编译为IL文件 ildasm...HelloWorld.exe /output=HelloWorld.il   然后就会生成一个.IL文件,这个文件进行HelloWorld.exe反编译后的代码 .assembly extern mscorlib....NET程序类库的主程序。....assembly  [assemblyName] {}    定义一个程序的元数据项,如果一个不定义此项,这个文件就不完全是一个应用程序,无法独立指定 .module [moduleName] 定义一个模块元数据项...”标准“C风格的字节字符串进行转换(默认值),其它有unicode(与UTF-16字符进行转换)和autochar(有底层平台定义的默认字符串转换) beforefieldinit  [可选]  静态成员在第一次访问之前初始化

    56530
    领券