Internet explorer 确定和更改VB6 OCX ClassID

Internet explorer 确定和更改VB6 OCX ClassID,internet-explorer,asp-classic,vb6,Internet Explorer,Asp Classic,Vb6,我被扔进了一个遗留系统增强。它是VB6+asp(旧式asp)系统。因此,基本上,系统将执行一些数据库查询,并将结果推送到activeX对象(OCX)中,以便以条形码形式打印信息 我被要求修改OCX,使其不打印一些徽标,但是,我需要保留原有的一个,以用于现有的打印目的。因此,我“另存为”原始版本,并成功地对其进行了修改 系统应将OCX安装到用户PC中。然而,我注意到,系统不是使用两个不同的OCX进行两种不同的打印,而是仅使用最新的OCX进行两种打印。OCX的名称不同。它们唯一共享的是类ID 我如何

我被扔进了一个遗留系统增强。它是VB6+asp(旧式asp)系统。因此,基本上,系统将执行一些数据库查询,并将结果推送到activeX对象(OCX)中,以便以条形码形式打印信息

我被要求修改OCX,使其不打印一些徽标,但是,我需要保留原有的一个,以用于现有的打印目的。因此,我“另存为”原始版本,并成功地对其进行了修改

系统应将OCX安装到用户PC中。然而,我注意到,系统不是使用两个不同的OCX进行两种不同的打印,而是仅使用最新的OCX进行两种打印。OCX的名称不同。它们唯一共享的是类ID


我如何确定新重新编译的OCX的类ID?我是否可以更改它?如何处理?

我已经很久没有处理ActiveX控件(OCX),但是这个知识库可能会有所帮助:

我已经很久没有处理ActiveX控件(OCX),但是这个知识库可能会有所帮助:

CLASSID是COM在旧控件的不同版本之间保持兼容性的一种方式。你真的不想改变它。在同一台机器上保留两个版本也是不可取的。最好创建一个省略横幅的控件的“新”版本,让编译器为该控件分配一个新的CLSID,保持路径干净

CLASSID是COM维护旧控件版本间兼容性的方法。你真的不想改变它。在同一台机器上保留两个版本也是不可取的。最好创建一个省略横幅的控件的“新”版本,让编译器为该控件分配一个新的CLSID,保持路径干净

OCX没有ClassID。但是,它们内部的控件会这样做


要查看各种GUI的值(除ClassID之外还涉及其他GUI),一种简单的方法是通过Visual Studio 6.0、Win2k资源工具包等附带的OLE view工具查看typelib信息。

OCX没有ClassID。但是,它们内部的控件会这样做


要查看各种GUI的值(除了ClassID还有其他涉及的),一种简单的方法是通过Visual Studio 6.0、Win2k资源工具包等附带的OLE view工具查看typelib信息。

假设我添加了新控件,如何确定OCX类ID?假设我添加了新控件,我如何确定OCX类ID?如果我理解这个问题,是的,每个控件或类都需要一个唯一的ID,因为这就是它们所在的库(x.OCX、y.dll等)以及其他细节在运行时的位置。如果我理解这个问题,是的,每个控件或类都需要一个唯一的ID,因为库就是这样的(x.ocx、y.dll等)它们位于的内部,其他详细信息在运行时找到。你得到解决方案了吗?@ImranKhanHunzai查看答案:Pdid你得到了解决方案?@ImranKhanHunzai查看答案:P