惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

博客园_首页
N
News and Events Feed by Topic
P
Privacy International News Feed
The Hacker News
The Hacker News
Schneier on Security
Schneier on Security
C
Cybersecurity and Infrastructure Security Agency CISA
Security Latest
Security Latest
L
LINUX DO - 最新话题
阮一峰的网络日志
阮一峰的网络日志
Cisco Talos Blog
Cisco Talos Blog
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
Simon Willison's Weblog
Simon Willison's Weblog
The Cloudflare Blog
博客园 - 【当耐特】
博客园 - Franky
P
Privacy & Cybersecurity Law Blog
Attack and Defense Labs
Attack and Defense Labs
云风的 BLOG
云风的 BLOG
月光博客
月光博客
D
Docker
Webroot Blog
Webroot Blog
The GitHub Blog
The GitHub Blog
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
W
WeLiveSecurity
S
Security Affairs
Martin Fowler
Martin Fowler
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
Security Archives - TechRepublic
Security Archives - TechRepublic
Microsoft Azure Blog
Microsoft Azure Blog
C
CERT Recently Published Vulnerability Notes
B
Blog
L
Lohrmann on Cybersecurity
T
Threatpost
量子位
S
Schneier on Security
V
Visual Studio Blog
S
Securelist
T
The Exploit Database - CXSecurity.com
Scott Helme
Scott Helme
V
Vulnerabilities – Threatpost
aimingoo的专栏
aimingoo的专栏
The Register - Security
The Register - Security
I
Intezer
Stack Overflow Blog
Stack Overflow Blog
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
博客园 - 聂微东
小众软件
小众软件
罗磊的独立博客
雷峰网
雷峰网
Recorded Future
Recorded Future

博客园 - Tmouse

初中面谈招生网上招生报名系统 招生报名系统,考试报名系统,比赛报名系统,培训报名系统,登记系统,可自定义选项 多功能表单填报系统V1.2.1-适用于在线报名系统、调查、数据收集等 小学生打字练习软件_在线网上打字比赛软件系统 中小学微课资源管理系统的开发与利用 学校公文办公处理系统_基于ASP.NET和Swfupload、FlashPaper2.2、校讯通短信发送的开发 新课程网上选课系统V1.0—适用于中小学校本课程选课、选修课选课 学校公司电脑设备故障物业网上在线报修系统 在线网上打字系统_在线网上打字比赛软件_打字练习_中英文打字系统 中学小学学校学生德育量化管理系统_文明班评比量化系统_德育评价系统_德育量化考核系统_政教管理系统_政教考核系统 转:c# 简单又好用的四舍五入方法 POS58票据热敏打印机,怎么用ESC/POS命令控制打印文字大小? - Tmouse - 博客园 用什么Ajax才 旅行惊魂 学习div+css 初中变成了菜园子了! 在Flash中使影片剪辑等候一段时间播放 Windows2003 IIS6.0下rmvb等不能下载的解决办法 CSS使图像等比例缩放兼容IE6、IE7、FF
转:C# .NET中调用VB编写的DLL代码事例(我做了些修改)
Tmouse · 2010-04-15 · via 博客园 - Tmouse

.NET中如何调用VB6编写的DLL。

  本文以C#为例,自己实践了一下。希望对遇到相关问题的人有所帮助。

  本示例分成两部分,第一,生成vb的dll。第二,在C#中进行调用。

  第一部分:

  1.首先在VB中选择ACTIVX DLL工程类型。如图:

  

  2.然后修改工程名,class文件名,添加2个函数,如下图:

  

  方便copy,代码如下:

  Public Function FncTestDLLForDotNet(instr As String) As Integer

  FncTestDLLForDotNet = 9

  End Function

  Public Function FncTestDLLForDotNet2(instr As String) As Integer

  FncTestDLLForDotNet2 = 99

  End Function

  3.然后从文件菜单中选择生成TestDLLProject1.dll,即可生成DLL。

  下面为第二部分:

  1.打开vs2005,选用语言c#,工程类型为一个window application即可。

  在form上添加一个按钮。如下图:

  

我加的: 把TestDLLProject1.dll拷贝到System32文件夹下

  2.在解决方案资源管理器中,右键点引用,在弹出的对话框中选择浏览,找到System32里的TestDLLProject1.dll,选中它,点确定。即可加入到引用中。如下图:

  

  添加完后,会看到在引用中已经增加了对这个dll的引用,如图:

  

  3,最后一步了编写按钮的代码,来调用这个vb的dll中的方法。

  双击form上的button,在button的click事件中加入如下代码:

  TestDLLProject1.TestClass1 tc = new TestDLLProject1.TestClass1();

  string ss = "kkkk";

  int i = tc.FncTestDLLForDotNet(ref ss);

  int i2 = tc.FncTestDLLForDotNet2(ref ss);

  MessageBox.Show(i.ToString() + " " + i2.ToString());

  好,按ctrl+shift+b,编译工程,再按f5运行,点击按钮,如下图,成功弹出结果。

  如图:

  

 如果要移植到其他计算机上,需要把TestDLLProject1.dll复制到该机的System32文件夹下,并在“运行”中使用regsvr32 TestDLLProject1.dll这条命令来注册该组件(可能有的组件不需要注册吧),才能成功移植到其他计算机。否则会报错“检索COM类工厂中CLSID为{ 一串字符 } 的组件时失败,原因是出现以下错误:80040154”