使用命令行工具SDK Command Prompt,键入:SN -T C:\*****.dll
就会显示出该dll具体的PublicKeyToken
数值。
如果该程序集没有强命名,则不会有PublicKeyToken
数值。
将一个程序集强命名的方法是:
用SN -k C:\***.snk命令生成***.snk文件,将该snk文件加载到项目中。在项目上右键属性,选择Signing选项卡,钩选中“Sign the assembly”,再在下拉列表中选择刚才生成的***.snk,重新编译程序集。
此后,该程序集就被强命名了,它的PublicKeyToken
就有相应数值了。
注意要用大写的-T,不能用小写的。
公钥标记由应用程序签名时所用公钥的SHA-1哈希代码的最后8个字节表示
分享到:
相关推荐
标题 "C# DLL源码查看器" 描述的是一个工具,它允许用户查看由C#编译器生成的DLL(动态链接库)文件中的源代码。这个工具的主要功能是为开发者提供便利,使得他们能够在不拥有原始源代码的情况下,理解和分析已编译...
它可能包含一个C# DLL项目和一个C++/CLI项目,展示了一个简单的功能,如数值计算或数据处理。 总结起来,C++调用C#的DLL涉及到C++/CLI的使用,这是一种能够连接C++和.NET生态系统的工具。通过正确配置和编写代码,...
`DllImport`是.NET Framework提供的一种机制,用于声明一个托管方法(即C#方法)实际上是从非托管代码(即DLL)中导入的。这种方法允许我们在C#程序中直接调用外部DLL中的函数,实现跨语言间的互操作。 #### 二、...
接下来,我们将详细讲解如何使用C#创建一个可以被Delphi调用的DLL组件。 1. **创建.NET DLL项目**: - 打开Visual Studio,创建一个新的C#类库项目(例如命名为`TestDll`)。 - 添加必要的命名空间引用,如`...
要从另一个C#应用程序中使用这个DLL,首先需要将DLL添加到项目的引用中。在新项目中,右键点击“引用” -> “添加引用” -> “浏览”,找到刚才生成的“ClassLibrary1.dll”并添加。 5. 调用DLL方法 在主项目中,...
本主题聚焦于如何使用C#编写一个动态链接库(DLL),然后让Visual Basic(VB)程序来调用这些DLL中的函数。以下是详细步骤和相关知识点: **1. 创建C# DLL** 首先,我们需要在Visual Studio中创建一个新的C#类库...
标题中的"C#连MySQL所需DLL.zip"是一个包含这些必要的DLL文件的压缩包,其中最重要的是"MySql.Data.dll"。 "MySql.Data.dll"是由Oracle公司提供的MySQL .NET Connector,它是C#或其他.NET语言与MySQL数据库之间通信...
__declspec(dllexport)将一个函数声名为导出函数,就是说这个函数要被其他程序调用,即作为DLL的一个对外函数接口。 四、加载dll失败和找不到dll方法的入口点 在调用dll方法时,我们可能会遇到加载dll失败和找不到...
然后,进入“签名”标签,选择“为程序集签名”,点击“选择强名称密钥文件”,然后选择“新建”来创建一个新的密钥文件。你可以给密钥命名,但不需要设置密码。 完成这些配置后,我们可以编写接口和实现类。这里...
2. 创建C# DLL(如CSharpLibrary项目):如果你的DLL中包含C#代码,同样创建一个C#类库项目,完成相应的功能,并编译生成DLL。 3. 将DLL作为资源嵌入:在C# Winform应用(如Demo项目)中,将生成的C++和C# DLL添加...
1. 添加引用:在另一个C#项目中,如果要使用上述创建的DLL,首先需要添加对该DLL的引用。右键点击项目,选择"添加引用",在"浏览"选项卡中找到`MathOperations.dll`,点击"确定"。 2. 引入命名空间:在需要调用DLL...
- 在Visual Studio中新建一个类库项目,如命名为`Class1.cs`。 - 类库项目的目的是为了创建一个包含函数和类的DLL文件,这个DLL文件可以被其他应用程序(包括VFP)调用。 2. **编写方法**: - 示例中提供了一个...
3. 在VB6中创建一个对象,该对象将代表C# DLL中的接口。例如: ```vb Private cSharpDll As New CSharpDll.ICSharpDll ``` 4. 使用VB6对象调用C#方法: ```vb Dim result As Integer result = cSharpDll.Some...
1. **资源利用效率高**:多个程序同时使用同一个DLL时,只需加载一次,减少了磁盘和内存的占用。 2. **模块化设计**:DLL支持模块化程序开发,便于创建多语言版本或模块化结构的大型程序。 3. **简化部署和更新**:...
在C#中,可以使用`System.Reflection`命名空间下的`Assembly`类来动态加载DLL。具体操作如下: ```csharp Assembly assembly = Assembly.LoadFile(pathToDll); ``` 这里的`pathToDll`是DLL文件的路径。加载完成后,...
例如,如果你有一个C#编写的DLL用于图像处理或数据库操作,你可以通过`electron-edge-js`将这些功能引入到你的Electron应用中。 在实际操作中,我们需要先安装`electron-edge-js`。在项目根目录下,可以通过npm或者...
创建一个静态类,例如`DllClass`,并在其中定义一个静态方法`LoadResourceDll`。在这个方法中,我们将处理程序在运行时动态加载嵌入的DLL。 ```csharp static class Program { [STAThread] static void Main()...
- **创建C++ DLL项目:** 使用Visual Studio创建一个C++ DLL项目,命名为`COMTest_Bridge`。 - **添加C# DLL文件:** 将之前生成的`COMTest.dll`和`COMTest.tlb`文件复制到C++项目的`Debug`目录下。 - **注册COM...
在Visual Studio中创建一个新的C#控制台应用程序项目,命名为`CSharpApp`。 5. 引用C++DLL: 将`CPlusPlusDLL.dll`添加到C#项目的“引用”中,右键点击项目,选择“添加引用”,然后在“浏览”选项卡中找到DLL...
在本例中,`MySql.Data.dll`就是这样一个库,它由MySQL官方提供,允许C#程序与MySQL服务器进行通信。这个DLL包含了所有必要的类和方法,使得开发者可以在C#代码中执行SQL查询、管理数据库连接等操作。 要使用`MySql...