gpt4 book ai didi

visual-studio-2010 - 在项目模板中使用本地 IWizard 程序集作为 WizardExtension

转载 作者:行者123 更新时间:2023-12-01 02:41:10 29 4
gpt4 key购买 nike

我有一个非常简单的 IWizard实现的唯一目的是将参数变量添加到字典中(不需要用户交互)。

如果可能,我不想将其添加到 GAC。

我放置了 dll在模板 zip 文件的根目录中使用 vstemplate文件并在 WizardExtension 中引用了名称部分:

<WizardExtension>
<Assembly>Wizard.dll</Assembly>
<FullClassName>Wizard.Wizard</FullClassName>
</WizardExtension>

我希望这会找到并使用程序集的本地副本,但它似乎不起作用。

有什么方法可以使用 IWizard实现而不安装到 GAC?

最佳答案

我终于检查了描述的解决方案 here .

这个想法是我们必须将实现 IWizard 的程序集添加到 GAC 或 Visual Studio 使用程序集探测机制查找的任何其他位置。 VS 在 C:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE 附近寻找我们的模板程序集 (devenv.exe) .它还在两个子目录中查找:PrivateAssembliesPublicAssemblies .

我不确定是否需要使用强名称 key 对我们的程序集进行签名(在我的情况下我使用签名的 key )。你可以很容易地检查它。

所以,如果我没记错的话,不可能直接从模板 zip 文件中强制使用程序集 .为了更容易地使用和更新我的模板,我将创建一个小型安装项目。

最后一点。 据我所知,您不得在 Assembly 标记中指定程序集的 .dll 扩展名。以下是我为向导扩展程序集编写 vstemplate 部件的方法:

  <WizardExtension>
<Assembly>WpfTaskTemplateWizard, Version=1.0.0.0, Culture=Neutral, PublicKeyToken=22050f445905b871</Assembly>
<FullClassName>WpfTaskTemplateWizard.UIWizard</FullClassName>
</WizardExtension>

关于visual-studio-2010 - 在项目模板中使用本地 IWizard 程序集作为 WizardExtension,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8299718/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com