2009-12-10 50 views
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來代替演示的CSharpGeneratorsGuidCSharpProjectGuid,以便讓我的工具在任何類型的項目中使用? (像VB,F#,IronPython等)

+0

我自己的研究不幸告訴我,這是不可能的,所以我真的希望有人有更好的消息比給予。 – Alex 2009-12-10 09:35:55

回答

0

我已經搜索和搜索,但我沒有找到答案,我真的開始相信沒有答案。證明我錯了(是的,請證明我錯了),我會將你的答案標記爲已接受的答案。