【发布时间】:2012-11-15 17:34:26
【问题描述】:
我有一些 .NET C# 代码想要通过已编译(非托管)C++ 程序执行。
目前我所做的是将前者放入一个单独的 .exe 文件中,我从 C++ 程序中执行该文件。 (C++ 程序执行 .exe 文件,传入适当的参数,并将其输出捕获到变量中。)
这行得通。但是,执行一个单独的 .exe 文件会引入一些开销,而且开销是显而易见的——当 .exe 程序运行和完成时,人们会注意到半秒左右的间隙。
问题:有没有更好的方法来进行这种集成?比执行 .exe 更快的东西。
我在运行 Visual Studio 2010 的 Windows XP 上。
【问题讨论】:
-
您应该能够使用本机 CLR 主机 API 执行此操作。
-
您明白这 1 秒的差距可能仍然存在吧?
-
如果您重复运行托管程序,您可能会发现将其重新设计为持久服务更有效。
标签: c# c++ windows visual-studio-2010