如何从C ++程序运行regasm.exe?

时间:2009-06-09 05:37:02

标签: c++ visual-studio visual-c++

我想编写一个运行regasm.exe的程序,以编程方式创建一个tlb文件。

我该怎么做?

非常感谢你的帮助......

提前致谢。

1 个答案:

答案 0 :(得分:3)

您必须使用CreateProcess()函数来运行命令行,如“fullPathToRegasm / somekeys filename”。

主要问题是检测regasm位置 - 使用GetCORSystemDirectory()函数。首先使用LoadLibrary()加载mscoree.dll,然后调用GetProcAddress()来定位GetCORSystemDirectory()函数,然后调用该函数。

这将为您提供.NET安装的根目录。 regasm通常位于任何给定计算机上安装根目录的同一子路径中,因此您可以安全地将检测到的根与子路径组合在一起,这将是一个有效的regasm位置。