在哪里可以找到IVCWizCtlUI的实现

本文关键字:IVCWizCtlUI 实现 在哪里 | 更新日期: 2023-09-27 18:02:04

背景:

我有一个visual studio C++自定义项目模板来创建自定义解决方案。当我们说new project并选择这个自定义模板时,它会要求一个xml文件并创建一个可视化的c++解决方案,将xml文件中的值替换为模板文件。

我现在想做什么

我想自动化这个过程(无需用户干预即可打开visualstudio并选择自定义模板(。Infact使用C#中的组件。该组件与visualstudio向导有依赖关系,如示例javascript 所示

面临的困难

xml解析器是一个com组件,它以visualstudio向导为参数。只有我设置正确,我才能继续。该向导基本上实现了以下接口。

http://msdn.microsoft.com/en-us/library/microsoft.visualstudio.vswizard.ivcwizctlui_members(v=VS.90(.aspx

不确定如何在C#中访问此向导。

当前Javascript代码:

var aConverter = new ActiveXObject("NAMESPACE.MYParser");
//Problem: Not sure how to set this value, when "NAMESPACE.MYParser" used in C#
aConverter.Wizard = window.external;
aConverter.Filename = xmlfile;
//This method if called from C# without setting "aConverter.Wizard" throws exception
aConverter.ParseMyXML();
var value = aConverter.Someproperty;

先前研究:

我试着用dte。LaunchWizard,但我仍然弹出了一个UI,这是我需要避免的。LaunchWizard对我来说不是一个好方法,因为我想在C#中直接控制"NAMESPACE.MYParser">

在哪里可以找到IVCWizCtlUI的实现

这可能与您想要的方向不完全相同,但您是否考虑过使用CMake(开源(?

CMake是一种在不同平台和IDE上自动设置代码项目/工具集的工具。CMake还可以生成VisualStudio解决方案,所以您所要做的就是设置CMake配置文件,然后生成解决方案。您还可以合并参数,以便用户能够对要进一步生成的项目进行成本计算。

这是一个很棒的工具,可以在大多数平台上运行,还有一个易于使用的GUI。看看:http://www.cmake.org/