0
我正在使用DSL工具,並且對於此工具,存在一個用於創建輸出文件的自定義代碼生成工具。語言中性定製工具
class FileGenerationRegistrationAttribute : RegistrationAttribute
{
private const string CSharpGeneratorsGuid = "{fae04ec1-301f-11d3-bf4b-00c04f79efbc}";
private const string CSharpProjectGuid = "{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}";
public override void Register(RegistrationAttribute.RegistrationContext context)
{
// register custom generator
key = context.CreateKey(@"Generators\ " + CSharpGeneratorsGuid);
...
key.Close();
// register editor notification
key = context.CreateKey(@"Projects\ " + CSharpProjectGuid + @"\FileExtensions");
...
key.Close();
}
}
這工作,但事情是,通過該工具生成的代碼將是語言中性(通過使用:目前,該工具是用一個RegistrationAttribute在DslPackage用下面的代碼C#註冊的CodeDOM)。它不需要該項目是C#類型。所以我的問題是:我可以使用什麼GUID來代替演示的CSharpGeneratorsGuid
和CSharpProjectGuid
,以便讓我的工具在任何類型的項目中使用? (像VB,F#,IronPython等)
我自己的研究不幸告訴我,這是不可能的,所以我真的希望有人有更好的消息比給予。 – Alex 2009-12-10 09:35:55