原贴子在:http://www.tiantiansoft.com/bbs/dispbbs.asp?BoardID=40&ID=75310
VB6的控件都可以搞到vs.net里继续用的,只是有好些都是未授权的,比如说Rich Text Box Control6.0,好多都没有,在那个贴子里我搞的是Microsoft WinSock Control控件,就是mswinsck.ocx。
按下面的步骤处理掉就成:
1、复制mswinsck.ocx到c:\winnt\system32目录下,到.net的光盘里,在“Extras\VB6 Controls\”目录下复制vb6controls.reg文件到任意地方,因为我光盘里的这个文件有问题,我用的是下载的
2、执行regsvr32 mswinsck.ocx注册
3、执行regedit.exe进入注册表编辑器里,然后是菜单“文件”->“导入”,就选在第一步里,复制的那个vb6controls.reg文件,会弹出对话框告诉你说“vb6controls.reg里的信息已被成功地输入注册表”的
4、在vs.net工具箱上右击,选“添加/移除选项卡(I)”,会弹出“自定义工具箱”对话框,点击“COM组件”,在“Microsoft WinSock Control,Version 6.0”那一列打上勾,确定后,就可以从工具箱里拿mswinsck.ocx用了
在form里使用这个控件后,可以看到它被声明成:
private AxMSWinsockLib.AxWinsock axWinsock1;
在解决方案的引用里,也可以看到多了一个MSWinsockLib,估计是.net把这个vb6控件转换成的
还有就是在编译后,会在bin\Debug目录下,生成AxInterop.MSWinsockLib.dll和Interop.MSWinsockLib.dll
谢谢狼子把学习的经验拿来分享;)