首页 Soft PlugIn RAN乱 Dev开发 Info资料 English WAP 留言 登陆 注册
-
Posted by Yippee | 评论(1) | 引用(0) | 阅读3481次
VC VB 调用 .NET 组件

VC VB 调用 .NET 组件

根据 .NET组件和COM组件之间的相互操作 说明的
(以上程序在Windows2000 server+VS.NET Beta2下测试通过)
P:\测试代码\tlbcom\bin\Debug>regasm  tlbcom.DLL /regfile:tlbcom.reg
Microsoft (R) .NET Framework Assembly Registration Utility 1.1.4322.568
Copyright (C) Microsoft Corporation 1998-2002.  All rights reserved.

成功生成了注册表脚本“P:\测试代码\tlbcom\bin\Debug\tlbcom.reg”

P:\测试代码\tlbcom\bin\Debug>O:\微软\vs7\SDK\v1.1\Bin\tlbExp tlbcom.dll /out:tlbcom.tlb
Microsoft (R) .NET Framework Assembly to Type Library Converter 1.1.4322.573
Copyright (C) Microsoft Corporation 1998-2002.  All rights reserved.

Assembly exported to P:\测试代码\tlbcom\bin\Debug\tlbcom.tlb

现在好像是用 用C#生成.dll 供VB6的开发人员调用

P:\测试代码\tlbcom\bin\Debug>regasm tlbcom.dll /tlb:tlbcom.tlb
Microsoft (R) .NET Framework Assembly Registration Utility 1.1.4322.568
Copyright (C) Microsoft Corporation 1998-2002.  All rights reserved.

成功注册了类型
程序集已被导出到“P:\测试代码\tlbcom\bin\Debug\tlbcom.tlb”,类型库注册成功

两个生成的TLB文件一致。

但是我VB引用TLB之后,
Option Explicit
Private Sub Command1_Click()
Dim mm As New tlbcom.Class1
Dim sd As String
sd = "12"
sd = mm.sayhlo(sd)
End Sub

结果出现:
加载了     MSCOREE . DLL 的两个不同副本          。
第一个副本       :
<Unknown>

第二个副本       :
F:\WINXP\Microsoft   .NET\Framework\v   1 .1.4322 \mscorwks  .dll

这通常是由于已注册的               MSCOREE .DLL  不同于
与应用程序静态链接的               MSCOREE .DLL  造成的    。

看了看

在 C# 中创建 COM 对象 (把 C# 类公布到 COM )

觉得太麻烦了。

想作个B2RSS的插件,正好想看看C#作个东西,所以顺便看看如何VC制作B2 DLL插件,然后里面用C#制作RSS组件。

REGEDIT4

[HKEY_CLASSES_ROOT\tlbcom.Class1]
at ="tlbcom dot Class1"

[HKEY_CLASSES_ROOT\tlbcom.Class1\CLSID]
at ="{ 94584945-D4CE-37C7-8A5C-74BCD9488AC7 }"

[HKEY_CLASSES_ROOT\CLSID\{ 94584945-D4CE-37C7-8A5C-74BCD9488AC7 }]
@="tlbcom dot Class1"

[HKEY_CLASSES_ROOT\CLSID\{ 94584945-D4CE-37C7-8A5C-74BCD9488AC7 }\InprocServer32]
at ="mscoree dot dll"
"ThreadingModel"="Both"
"Class"="tlbcom.Class1"
"Assembly"="tlbcom, Version=1.0.2165.24822, Culture=neutral, PublicKeyToken=null"
"RuntimeVersion"="v1.1.4322"

[HKEY_CLASSES_ROOT\CLSID\{ 94584945-D4CE-37C7-8A5C-74BCD9488AC7 }\InprocServer32\1.0.2165.24822]
"Class"="tlbcom.Class1"
"Assembly"="tlbcom, Version=1.0.2165.24822, Culture=neutral, PublicKeyToken=null"
"RuntimeVersion"="v1.1.4322"

[HKEY_CLASSES_ROOT\CLSID\{ 94584945-D4CE-37C7-8A5C-74BCD9488AC7 }\ProgId]
at ="tlbcom dot Class1"

[HKEY_CLASSES_ROOT\CLSID\{ 94584945-D4CE-37C7-8A5C-74BCD9488AC7 }\Implemented Categories\{ 62C8FE65-4EBB-45E7-B440-6E39B2CDBF29 }]


字体:

Permanant URI永久地址 http://www.shengfang.org/blog/p/VBVCDLLCASLLDOTNET1.php
Trackback URI引用地址 http://www.shengfang.org/blog/tb.php?tb_id=1133763816

2005年12月5日14:23星期一  [Dev开发] 追踪此文的RSS
ak在 2006年1月17日11:26星期二 评论:
Emotion这算什么啊?
Yippee 回复于 2006年1月17日19:57
个人开发的笔记 :)

称呼:    登陆   注册
   不注册,但记住我的信息
邮件:
(非必须)
评论: [UBB代码帮助]
粗体 斜体 下划线 链接 水平线 引用



验证码: 请输入你看见的数字
关闭UBB      提交时自动将内容复制到剪贴板

公告





统计信息
[Yippee]||[统计]||日志:2143
在线: 19||用户: 2635 [列表]
今日:665||到访:3654450
Rss:||评论:1668

最新日志

最新评论

友情链接

日历
342009 - 0734
   1234
567891011
12131415161718
19202122232425
262728293031 

最新引用
搜索

归档

杂项
Get RSS Feed (Version 2.0)
Get Atom Feed (Version 0.3)
编码:  UTF-8