Asp classic COM+;方法(如何查看内部?)

Asp classic COM+;方法(如何查看内部?),asp-classic,migration,reverse-engineering,com+,component-services,Asp Classic,Migration,Reverse Engineering,Com+,Component Services,我必须更新一个古老的内联网应用程序,它是用经典的ASP编写的,并使用内部COM+服务。我在任何地方都找不到这个对象的源代码,开发人员也没有对它进行记录 我可以通过Start->Administrative Tools->Component Services查看服务中可用的方法,但我一辈子都不知道如何查看这些方法的内部以了解它们在做什么 是否有反编译这些COM+服务的方法,或者以其他方式查看它们的方法,或者我注定要对旧应用程序进行纯粹的观察,并尽最大努力模拟行为和数据 注意:我从旧服务器导出了服务

我必须更新一个古老的内联网应用程序,它是用经典的ASP编写的,并使用内部COM+服务。我在任何地方都找不到这个对象的源代码,开发人员也没有对它进行记录

我可以通过
Start->Administrative Tools->Component Services
查看服务中可用的方法,但我一辈子都不知道如何查看这些方法的内部以了解它们在做什么

是否有反编译这些COM+服务的方法,或者以其他方式查看它们的方法,或者我注定要对旧应用程序进行纯粹的观察,并尽最大努力模拟行为和数据


注意:我从旧服务器导出了服务,安装在“我的开发”框中,添加了对VS2010项目的引用,并尝试使用对象资源管理器识别这些方法。没有…

COM服务包括COM类上存在的方法及其参数的类型描述,以便自动化控制器能够确定如何将参数传递给COM方法

不过,除此之外,除了本机x86机器代码本身之外,没有任何东西可以指示COM类在内部做什么。您可以尝试在DLL上使用x86反汇编程序,但除非您已经熟悉x86机器代码指令,否则这不会有多大帮助


将源代码编译成本机代码会浪费大量信息。变量名、内部函数名,CPU执行指令和执行原始源代码指示的操作不需要这些。事实上,反汇编程序不可能重新组合这些名称,而这些名称可以作为代码意图的有用线索。反汇编程序有时可以帮助找出核心逻辑,但它需要大量的仔细分析和努力,甚至需要一个人来触及表面。这就像是试图通过看一片一片的草来了解森林。

谢谢你的回答,先生。这些方法似乎主要只是从数据库中获取数据。我已经从global.asa文件中确定了连接字符串。是否有一种方法至少可以通过反编译来确定SQL选择命令?如果是,我在哪里可以获得DLL?我所能导出的只是一个包含MSI安装程序的*.CAB文件。您需要安装COM组件,以便在其DLL中进行浏览。反汇编DLL可能会显示DLL用于形成SQL查询的字符串片段。如果幸运的话,您要查找的SQL查询位于一个参数化字符串常量中。如果您没有那么幸运,DLL使用大量的小字符串concat操作构造SQL查询,在这种情况下,在反汇编代码中几乎看不到什么。安装DLL还应使您能够调用DLL方法并在调试器中逐步执行asm代码。