1. 创建一个 C# Class Library ,命名为:HelloWorld 2. 打开项目的属性,在点选左边的 Application(就是第一个tab) , 然后点击 Assembly Information 按钮 ,在弹出的Dialog中, 必须在底部勾上: Make assembly COM-visible !否则 , 这个dll将不能以COM方式访问
1. 创建一个 C# Class Library ,命名为:HelloWorld
2. 打开项目的属性,在点选左边的 "Application"(就是第一个tab) , 然后点击 Assembly Information 按钮 ,在弹出的Dialog中, 必须在底部勾上: Make assembly COM-visible !否则 , 这个dll将不能以COM方式访问 .( 也可以在代码中的类声明中写上[ComVisible(true)] , 效果一样,需要增加using System.Runtime.InteropServices;引用)
3. 创建强命名签名文件并使用
使用vs.net的“Vsitual Studio .Net工具”-->Vistual Studio .Net命令提示符,输入 sn -k d:\HelloWorld.snk回车即创建了强命名签名文件
打开项目的属性,点选左边Signing 勾上Sign the assembly 在 Choose a strong name key file:处选择
4. 创建类库并编译成dll
namespace HelloWorld { [ComVisible(true)] public class Hello { public string Write() { return "Hello World"; } } }
PHP测试
<?php $r=new Com("HelloWorld.Hello"); $s=$r->Write(); echo $s; ?>