2011-07-15 32 views
8

Bối cảnh Trong đó:Tôi có thể tìm thấy việc thực hiện cho IVCWizCtlUI

Tôi có một visual studio C++ mẫu dự án tùy chỉnh để tạo ra một giải pháp tùy chỉnh. Khi chúng ta nói dự án mới và chọn mẫu tùy chỉnh này, nó sẽ yêu cầu một tệp xml và tạo một giải pháp trực quan C++, thay thế các giá trị từ tệp xml thành tệp mẫu.

Tôi đang cố gắng làm gì bây giờ?

Tôi muốn tự động hóa quá trình này, (không có sự can thiệp của người dùng để mở studio trực quan và chọn mẫu tùy chỉnh). Infact để sử dụng thành phần trong C#. Thành phần này có sự phụ thuộc với thuật sĩ phòng thu trực quan như được hiển thị trong mẫu javascript

Khó khăn phải đối mặt?

Trình phân tích cú pháp xml là thành phần com, trong đó có trình hướng dẫn phòng thu trực quan làm tham số. Chỉ khi tôi cài đặt đúng cách, tôi có thể tiếp tục. Trình hướng dẫn cơ bản thực hiện giao diện bên dưới.

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

Không chắc làm thế nào để truy cập vào wizard này trong C#.

mã Javascript hiện tại:

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; 

Trước khi nghiên cứu:

Tôi cố gắng để sử dụng dte.LaunchWizard, nhưng tôi vẫn nhận được một giao diện người dùng hiện lên, mà tôi cần phải tránh. LaunchWizard không phải là cách tốt cho tôi, vì tôi muốn kiểm soát trực tiếp trong C# cho "NAMESPACE.MYParser"

+0

Bài đăng đầu tiên tuyệt vời. Chỉ cần một mẹo mặc dù, để có được mã của bạn để hiển thị độc đáo, thụt lề tất cả mọi thứ với 4 không gian. Ngoài ra, bạn có thể chỉ cần chọn mã và nhấn tổ hợp bàn phím: 'Ctrl + K'. Và như một mẹo cuối cùng, không cần thiết phải bao gồm 'Thanks' hoặc tên cuối cùng của bạn ở cuối, lời cảm ơn là không cần thiết và tên của bạn đã xuất hiện trên trang. Nếu không, khởi đầu tuyệt vời. :) –

+0

@Jeff Cảm ơn phản hồi của bạn. Tôi đã cập nhật cho phù hợp. –

Trả lời

1

Nó có thể không giống với hướng bạn muốn, nhưng bạn đã cân nhắc sử dụng CMake (nguồn mở)) cho điều đó?

CMake là một công cụ để tự động thiết lập các dự án/bộ công cụ mã trên các plattforms và IDE khác nhau. CMake cũng có thể tạo ra các giải pháp VisualStudio, vì vậy tất cả những gì bạn phải làm là thiết lập các tệp cấu hình CMake của bạn và chỉ tạo ra giải pháp. Bạn cũng có thể kết hợp các tham số, để người dùng có thể chi phí cho dự án được tạo ra hơn nữa.

Đây là một công cụ tuyệt vời, chạy trên hầu hết các nền tảng và cũng dễ sử dụng GUI. Hãy khám phá: http://www.cmake.org/

Các vấn đề liên quan