1

我正在使用 DTE 从模板创建项目。我希望项目由特定的 .snk 文件签名。如何以编程方式进行?

请帮忙..!!

谢谢, 吉里什

4

1 回答 1

1

我所做的是在我的解决方案中添加一个新的 Addin 项目并添加以下代码:

    public void OnConnection(object application, ext_ConnectMode connectMode, objec addInInst,   ref Array custom)
    {
        _applicationObject = (DTE2)application;
        _addInInstance = (AddIn)addInInst;
        SetSign(_applicationObject);
    }

     public void SetSign(DTE2 app)
     {
         Solution solution = app.Solution;
         foreach (Project proj in solution.Projects)
         {
            if (null != proj.Properties && null != proj.Properties.Item("SignAssembly"))
            {
               Property projProperty = proj.Properties.Item("SignAssembly");
               bool signed = (bool)projProperty.Value;
               if (!signed)
               {
                  proj.Properties.Item("AssemblyOriginatorKeyFile").Value = @"C:\Projects\ClassLibrary1\Addins\Tools\mykeyfile.pfx";
                  proj.Properties.Item("SignAssembly").Value = true;
                }
                proj.Save();
             }
          }
       }
于 2012-09-19T15:38:53.867 回答