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

推荐订阅源

Hugging Face - Blog
Hugging Face - Blog
Jina AI
Jina AI
宝玉的分享
宝玉的分享
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
人人都是产品经理
人人都是产品经理
博客园 - 聂微东
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
J
Java Code Geeks
博客园 - 【当耐特】
小众软件
小众软件
博客园 - Franky
S
SegmentFault 最新的问题
WordPress大学
WordPress大学
雷峰网
雷峰网
The Cloudflare Blog
酷 壳 – CoolShell
酷 壳 – CoolShell
量子位
Last Week in AI
Last Week in AI
博客园_首页
月光博客
月光博客
IT之家
IT之家
阮一峰的网络日志
阮一峰的网络日志
Webroot Blog
Webroot Blog
Stack Overflow Blog
Stack Overflow Blog
腾讯CDC
云风的 BLOG
云风的 BLOG
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
W
WeLiveSecurity
Recent Commits to openclaw:main
Recent Commits to openclaw:main
D
Docker
The Last Watchdog
The Last Watchdog
有赞技术团队
有赞技术团队
Hacker News - Newest:
Hacker News - Newest: "LLM"
D
DataBreaches.Net
S
Security @ Cisco Blogs
Blog — PlanetScale
Blog — PlanetScale
GbyAI
GbyAI
TaoSecurity Blog
TaoSecurity Blog
S
Security Affairs
Y
Y Combinator Blog
O
OpenAI News
罗磊的独立博客
MongoDB | Blog
MongoDB | Blog
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
Forbes - Security
Forbes - Security
P
Palo Alto Networks Blog
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
K
Kaspersky official blog
Cloudbric
Cloudbric

博客园 - 懒蜜蜂

身份证校验规则 [转]扩展jQuery easyui datagrid增加动态改变列编辑的类型 在IIS 5.1/6上以FastCGI方式安装 PHP 通过修改IP/TCP包头伪造IP来与网页进行交互 如何修复.Net和COM之间枚举名称的问题 Compiling and Registering a Type Library Objective-C札记二-- Iphone中关于Layer的opaque属性 Xcode配置SVN作为版本控制 Emacs快捷键 Objective C中的札记--字符串连接,@selector中的冒号,时间转换,局部变量 使用GDataXML的设置 IPhone Exec_Bad_Access问题解决办法 C#版的AMF消息封装 Javascript中暂停功能的实现 - 懒蜜蜂 - 博客园 数据库基础理论--关系模式及范式 函数依赖(转) 数据库基础理论之--超键 候选键 主键 拷贝VMWare虚机(XP操作系统)之后网络不通
如何修复.Net和COM之间枚举名称的问题(续)
懒蜜蜂 · 2010-12-29 · via 博客园 - 懒蜜蜂

     前面我们有一篇“如何修复.Net和COM之间枚举名称的问题”,按照那篇文章的方法做可以解决编译问题,但是运行的时候会出现run-time error “429” , ActiveX不能创建的问题,关键问题是因为.net程序集没有注册的原因造成的,需要通过regasm注册一下就解决了。具体操作步骤是:

    1 编写您需要.net程序

     2 使用以下批处理来导出tlb文件

@echo Off

set binDir="C:\Program Files\Microsoft SDKs\Windows\v7.0A\bin"

%binDir%\tlbexp PCTSEventLog.dll

%binDir%\tlbexp PCTSAuditLog.dll

rem "C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Regasm" PCTSEventLog.dll /regfile:PCTSEventLog.reg

rem "C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Regasm" PCTSAuditLog.dll /regfile:PCTSAuditLog.reg

Call "C:\Program Files\Microsoft SDKs\Windows\v7.0A\bin\OleView.Exe"

rem Pause

    3 打开ole view之后,导出idl文件,然后使用下面的命令进行编译

@echo off

Call "C:\Program Files\Microsoft Visual Studio 10.0\VC\vcvarsall.bat" x86

set binDir="C:\Program Files\Microsoft SDKs\Windows\v7.0A\bin"

%binDir%\MIDL PCTSEventLog.idl

%binDir%\MIDL PCTSAuditLog.idl

Pause

    4 编译成功之后,将新生成的dll和tlb文件拷贝到目标机器上。然后使用以下命令进行注册,并把程序集加入到GAC(全集共享缓存区):

@echo off

gacutil /i PCTSEventLog.dll

gacutil /i PCTSAuditLog.dll

gacutil /i Interop.ERConnect.dll

regasm PCTSEventLog.dll

regasm PCTSAuditLog.dll

regasm Interop.ERConnect.dll

rem regedit /s PCTSEventLog.reg

rem regedit /s PCTSAuditLog.reg

rem "C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\regtlibv12" "C:\Work\Bin\Release\Net\PCTSEventLog.tlb"

rem "C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\regtlibv12" "C:\Work\Bin\Release\Net\PCTSAuditLog.tlb"

rem Regasm PCTSAuditLog.dll /t

rem Regasm PCTSAuditLog.dll /t /u

rem Pause

    5 接下来您就可以在COM中调用.net的程序集了。

    7 当多次进行修改调试的时候,您可以使用下面的命令进行反注册:

@echo off

gacutil /u PCTSEventLog

gacutil /u PCTSAuditLog

gacutil /u Interop.ERConnect.dll

Regasm PCTSEventLog.dll /t /u

Regasm PCTSAuditLog.dll /t /u

Regasm Interop.ERConnect.dll /u

rem "C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\regtlibv12" /u PCTSEventLog.tlb

rem "C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\regtlibv12" /u PCTSAuditLog.tlb

rem Pause

   一切就大功告成了!!