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

C#程序集信息GUID设置?

在C#中,程序集信息GUID(Globally Unique Identifier)是一个唯一标识符,用于标识程序集。程序集是.NET应用程序的一个单位,它可以包含类、接口、结构等。GUID是一个128位的数字,通常表示为32个十六进制数字,每4个数字之间用连字符(-)分隔。

在C#中,可以使用Guid类来生成GUID。例如:

代码语言:csharp
复制
Guid guid = Guid.NewGuid();

这将生成一个新的GUID。

在程序集中,可以使用AssemblyInfo.cs文件来设置程序集信息,包括GUID。例如:

代码语言:csharp
复制
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;

// 通过将 ComVisible 设置为 false 使此程序集中的类型
// 对 COM 组件不可见。如果需要从 COM 访问此程序集中的类型,
// 则需要将该类型的 ComVisible 特性设置为 true。
[assembly: ComVisible(false)]

// 如果此项目向 COM 公开,则下列 GUID 用于类型库的 ID
[assembly: Guid("f818b7d1-8e83-4c1b-9c57-f11e6a1e8f15")]

在这个例子中,程序集的GUID被设置为"f818b7d1-8e83-4c1b-9c57-f11e6a1e8f15"。

总之,程序集信息GUID是一个唯一标识符,用于标识程序集。可以使用Guid类生成GUID,并在程序集信息中设置GUID。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

C# 命名空间和程序

.); } } 上面的代码构造了一个System.IO.FileStream对象,像这样写代码很繁琐,因为每次都需要写上类型的完全限定名,所以C#编译器提供了using指令,通过...,所以通过using引入命名空间的方式,能极大程度的帮助我们减少代码量.还增强了代码的可读性. 2、编译器查找类型的原理 编译器扫描引用的所有的程序,在其中查找类型定义,一旦找到了正确的程序,程序信息和类型信息就被嵌入到托管模块中的元数据中....为了获取程序信息必须将定义了被引用程序信息传递给编译器.C#编译器自动在MSCorLib.dll程序集中查找被引用类型,即使没有显示告诉它这么做.MSCorLib.dll程序集中包含所有核心Framework...例如: 应用程序可能同时使用了Microsoft和Wintellect开发的组件,假如两家公司都提供名为Widget类型,两个类型做的事情完全不同,由于干涉不了类型名称。...代码如下: Microsoft.Widget mw=new Microsoft.Widget(); Wintellect.Widget ww=new Wintellect.Widget(); (2)、C#

1.2K80

C#进阶-用于Excel处理的程序

通过对这些程序的比较和示例代码的演示,读者可以更好地理解如何在C#开发中利用这些工具进行Excel文件的读取、写入和操作。...这些程序提供了丰富的功能和灵活的API,能够满足不同场景下对Excel文件处理的需求,有助于提高开发效率和减少工作量。...接着,创建行和单元格,并通过SetCellValue方法设置单元格的值为"Hello"和"World"。最后,通过FileStream将工作簿写入到文件中。...然后,我们使用Cells属性来设置单元格的值,例如"A1"单元格的值设置为"Hello","B1"单元格的值设置为"World"。最后,我们调用SaveAs方法将Excel文件保存到指定路径。...四、Excel处理的程序总结除了上述提到的包之外,还有其他一些.NET平台上的Excel处理包,如GemBox.Spreadsheet等,它们也提供了丰富的功能来处理Excel文件。

8210

VisualStudio(VS)设置程序的版本信息(C-C++)

在 Visual Studio (以2017为例)中,可以轻松地设置这些信息,使应用程序具有更专业、规范的要求。...本文将介绍如何在 Visual Studio 2017 中设置生成程序的版本信息、公司信息和版权信息逐步指导大家完成这个过程,无论是开发新项目,还是为现有项目添加这些重要的元数据,都能从本文中获得帮助。...“LegalCopyright”:版权信息,表示此程序的版权归属。在给定的版本信息中,版权信息设置为"Copyright © 2023",表明此程序的版权归属于2023年。...在给定的版本信息中,原始文件名被设置为"ConsoleA.exe"。 “ProductName”:产品名称,表示此程序的名称。在给定的版本信息中,产品名称被设置为"C语言Demo"。...“ProductVersion”:产品版本,指定此程序的发布版本号。在给定的版本信息中,产品版本被设置为"1.0.0.1"。

70730

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

图 2-1 作用   AssemblyInfo.cs配置文件主要是通过特性来设置生成的有关程序的常规信息参数,如:程序名称、描述、所属公司等。...图 4-1   下面来详细解释各个特性的意义: //设置程序标题 [assembly: AssemblyTitle(".NET Pet Shop Model")] //设置程序描述信息 [assembly...程序在运行时不会使用该信息 [assembly: AssemblyConfiguration("")] //设置公司名称信息 [assembly: AssemblyCompany("Microsoft...图 4-2   此外,在VS中除了直接修改AssemblyInfo.cs文件来实现之外,还可以使用图形操作界面的形式来设置程序的常规信息。...右击项目,选择属性,进入【应用程序】界面,如图4-3所示。 图 4-3 点击【程序信息(I)】按钮,进入【程序信息】界面,如图4-4所示。

76830

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

CLR支持两种程序:弱命名程序(weakly named assembly)和强命名程序(strongly named assembly). ?...由于弱类型程序总是私有部署的,所以当CLR在应用程序的基目录或者子目录中搜索程序的文件时,只会使用程序的名称(添加一个.dll或者.exe)。...强类型程序则是由一个文件名、一个版本号和一个语言文化(culture),除此之外,强命名程序还使用发布者的私钥进行了签名。...VS2012中创建公钥/私钥文件,可显示项目属性,进入“签名”选项卡,勾选为“程序签名”,选择新建,如下图 ? 下面这幅图描述了CLR“对一个文件进行签名” ?...全局程序缓存 如果一个 程序要由多个应用程序访问,必须把它放在一个已知的目录中,而且CLR在检测到对该程序的一个引用时,必须知道自动检查该目录,这个已知的位置称为全局程序缓存(Global

45920

实现通过COM组件方式实现java调用C#写的DLL文件的完整demo

最近因为工作需要,客户那边工程师使用的是JAVA语言开发的程序,我们这边平台中是用C#语言开发的,因为有些操作必须统一,所以我在网上查找解决方法,自己也实践过,在这里做个笔记吧,分享一下。...(注:下面红色框和箭头和需要注意的地方) image.png 2、右键项目属性,点击项目属性,看到下面这个界面,点击红色框框"程序信息,使程序com可见,打上勾,如下图所示 程序集中其他信息可以根据个人喜好可写可不写...4、接下来是设置强签名,要以管理员的身份运行   ①.找到Visual Studio Command Prompt (VS2017 开发人员命令提示)    输入命令:sn -k D:/CalcComkey.snk...5、在签名 标签中选中 为程序签名,选择刚刚生成的强名称文件CalcComkey.snk 。 ?...6、创建GUID 通过点击工具 => 创建GUID => 选择4 => New Guid => copy => 替换下面 C#代码中的两个 GUID 值 创建GUID,新建复制,粘贴到代码中去就可以

2.6K80

VFP调用C#编写的DLL控件

因为VFP出来时还没有.NET,所以VFP不支持.NET,C#编写出来的DLL控件需要转换成系统COM组件,才能够被VFP调用,当然不仅仅局限于C#与VFP之间的调用,各种语言都有自己写COM组件的方法...下面就先介绍下,关于VFP与C#之间的联系 第一步:C#编写COM组件  1、新建一个类库项目 ? 2、将Class1.cs改为我们想要的名字(例如:MyClass.cs) ?...ComVisible属性设置为true ? 改成下图 ? 4、项目->MyLib属性 切换到“生成”选项卡,在底部位置,勾选“为COM互操作注册” ?...切换到“签名”选项卡  勾选“为程序签名”  在下面的下拉框里面选择“” ? 5、在弹出的对话框里面,输入MyKey。。或者随便取个名字   去掉“使用密码保护文件(P)”的选项 ?...属性里面的那个字符串,在“工具”菜单下面,“创建 GUID”   选择 [GUID(“xxxxxxxxxx-xxxx….xxxxxx”)],然后复制 8、编译&注册 ?

2K00

c#中开发ActiveX的学习笔记

来注册该dll),但是c#能开发com组件,activeX控件本质上讲跟com是一类技术,所以用c#开发"能够让网页调用的com类库"还是可行的。...3.开发步骤: (1)新建一个类库 (2)修改项目的"属性",在“生成”选项中把“输出”中的“为com互操作注册”勾中,然后再到“应用程序”选项中找到“程序信息”按钮,点击它,在弹出的界面中勾中“使程序...开发的(伪)"ActiveX"控件并非纯正的ocx,所以只能用RegAsm.Exe xxx.dll来进行程序的注册,这里要注意一点:在开发机上,项目编译后vs.net会自动将bin\debug\xxx.dll...命令行模式下) 当然,如果您不勾选3.(2)中所说的“为com互操作注册”,vs编译时便不会自动注册,但是这样调试起来不太方便,另外注册/反注册时的RegAsm.exe要起开发环境中的版本一致(比如你开发时设置是....net框架,当然您如果对于庞大的.net框架安装程序很敏感,仍然觉得纯正的ocx更好的话,建议还是用vb/delphi/c++这一类老牌的开发工具/语言实现。

1.4K50

C#的WinForm窗体程序中如何设置TextBox为密码文本框

C#的WinForm窗体程序中如何设置TextBox为密码文本框 – 2019-08-03 23:59 在C#的WinForm窗体程序开发过程中,TextBox是常用的文本框控件,默认的TextBox...文本 框输入的内容是可见的,如果在Winform程序中要设置TextBox文本框为密码输入框应该如何设置呢?...在Winform窗体程序设计界面选中TextBox文本框,然后右键菜单中有个属性,打开属性界面后,在属性设置栏中找到PasswordChar,将PasswordChar属性值设置成某一个常量,如星号*,...也可设置为其他变量如@等。...如设置PasswordChar属性值为@后,则Winform窗体运行后输入密码效果如下: 发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/154843.html原文链接

4.8K20

(翻译)LearnVSXNow!-#2 创建一个空的VS Package

如上图所示,我们选择C#作为该Package的开发语言,另外,由于VS Package必须被强命名,所以我们需要一个key文件来给我们的package程序进行签名,在这里我们利用向导帮我们自动生成一个...点击“Next”,将在下一步中设置Package的基本信息。 ? 请根据上图填入相应的内容。...可以看到,在项目引用中,包含很多interop assembly,这些程序帮助我们与Visual Studio IDE中的COM对象交互,并提供package需要的service。...你也许发现了项目引用中的System.Core.dll,这个程序是.Net Framework 3.5的一部分,这和我们一开始创建项目的时候选择的.NET Framework 2.0有些矛盾,不过没关系...定义程序信息 Package.ico 该package的图标 Resources.resx package级别的资源文件(初始的时候是空文件) GlobalSupressions.cs Global

1K10

IL编织器 --- Fody

核心Fody引擎的代码库地址 :https://github.com/Fody/Fody Github上是这样介绍的: 「Fody」 是一个用于织制 .NET 程序的可扩展工具。...它允许在构建过程中作为一部分来操纵程序的中间语言(IL),这需要大量的底层代码编写。这些底层代码需要了解 MSBuild 和 Visual Studio 的 API。...解析程序和 pdb 文件的位置。 抽象了与 MSBuild 日志记录的复杂性。 将程序和 pdb 文件读入 Mono.Cecil 对象模型中。 根据需要重新应用强名称。...保存程序和 pdb 文件。 「Fody」 使用 Mono.Cecil 和基于插件的方法在编译时修改 .NET 程序的中间语言(IL)。 它不需要额外的安装步骤来构建。...所以基于该库,诞生了非常非常多的插件库,下面简单介绍部分插件: 插件 描述 Github URL 「Fody」 编织.net程序的可扩展工具 https://github.com/Fody/Fody

40110

WPF使用MEF插件开发打造自己的工具箱

下面我先介绍一下MEF MEF简介 MEF可以方便的在c#程序中实现插件式开发。...通过接口暴露公开方法,插件内继承接口的类可以通过[export]特性公开出去,宿主程序通过[import]特性建立接口类型的属性,启用插件方法.插件可以和主程序不在一个程序,实现插件完全独立的开发....(使用[export]特性) 3、通过[import]特性调用插件 4、加载到主程序中 话不多说,直接上代码,懂的人自然懂.不懂的建议先学一下c#基础哦 1.新建DLL工程.创建一个IPlugin 接口...{ AggregateCatalog catalog = new AggregateCatalog(); //设置插件目录为程序目录...{ AggregateCatalog catalog = new AggregateCatalog(); //设置插件目录为程序目录

1.7K31
领券