团队建设和Dotfuscator

发布于 2024-07-29 07:16:14 字数 348 浏览 1 评论 0原文

我创建了一个解决方案,其中包含我的所有项目,包括 Dotfuscator 项目和安装项目。 一些 Dotfuscator 项目仅混淆某些程序集,而不影响它们的任何引用。 从 Visual Studio 构建时,这非常有效。 但是,当我运行团队构建时,出现以下错误:

C:\程序 文件\MSBuild\PreEmptive\Dotfuscator\4.0\PreEmptive.Dotfuscator.Targets(20,3): 错误:无法加载外部类型,因为其程序集无法 发现:

外部程序集是被混淆的程序集的引用,但它不是混淆项目的一部分。

I've created a solution that includes all my projects, including the Dotfuscator projects, and setup projects.
Some of the Dotfuscator projects are obfuscating only some assemblies, without affecting any of their references.
When building from Visual Studio, this works great. However, when I run a team build, I get the following error:

C:\Program
Files\MSBuild\PreEmptive\Dotfuscator\4.0\PreEmptive.Dotfuscator.Targets(20,3):
error : Couldn't load external type because its assembly can't be
found:

The external assembly is references by the assembly being obfuscated, however it is not part of the obfuscation project.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

淡忘如思 2024-08-05 07:16:14

引用的程序集不一定是 Dotfuscator 项目的一部分,但确实需要可供 Dotfuscator 读取。 我怀疑引用的程序集与工作站上的输入程序集位于同一目录中、在工作站的路径中或在 GAC 中。 引用的程序集可能不在您的构建服务器上(或者 Dotfuscator 无法定位)。 您可以提供用户定义的程序集加载路径,其中 Dotfuscator 将另外提供尝试解析引用的程序集时查看。

构建服务器上需要引用的程序集,Dotfuscator 才能成功混淆,最好的方法是确保引用的程序集与输入程序集位于同一目录中,或者使用用户定义的程序集加载路径。

此外,在 4.5.1200 版本中,您可以首先搜索用户定义的程序集加载路径,而不是默认最后搜索它们。

The referenced assembly does not have to be part of the Dotfuscator project but it does need to be available for Dotfuscator to read. I suspect that the referenced assembly is either in the same directory as your input assemblies on your workstation, in the path of your workstation or in the GAC. It is probable that the referenced assembly is not on your build server (or is not locatable by Dotfuscator). You can provide User Defined Assembly Load Paths where Dotfuscator will additionally look when attempting to resolve referenced assemblies.

The referenced assembly will be required on the build server for Dotfuscator to successfully obfuscate and the best way is to either ensure the referenced assembly is in the same directory as the input assemblies or to use a User Defined Assembly Load Path.

Also, new in version 4.5.1200 you can have your User Defined Assembly Load Path's searched first rather than the default of searching them last.

樱&纷飞 2024-08-05 07:16:14

C:\Program Files\MSBuild\PreEmptive\Dotfuscator\4.0\PreEmptive.Dotfuscator.Targets

此程序集必须与构建代理计算机位于同一服务器上。

简而言之,假设TFSServer是您的数据层机器名称(包含源文件)以及构建机器,那么 dotfuscator 目标文件需要对其进行访问。

只需在 **TFSServer 计算机上安装 dotfuscator,即可访问该路径以及关联的目标文件。**

C:\Program Files\MSBuild\PreEmptive\Dotfuscator\4.0\PreEmptive.Dotfuscator.Targets

This assembly must lie on the same server as your Build agent Machine.

In simple words, assuming the TFSServer is your Data Tier MAchine Name (Containing Source files) as well as Build Machine then dotfuscator target files need to accessible to it.

Simply install dotfuscator on the **TFSServer Machine and the path will become accessible to it alongwith the associated target files.**

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文