Dotfuscator Pro cant read licensing information under Jenkins buildserver

佐手、 提交于 2019-12-07 06:24:38

问题


I'm trying to get Dotfuscator Pro 4.13 to run between the unit tests and creation of installation package. The buildserver that we use is Jenkins 1.487 on Windows Server 2008 R2.

The command line for dotfuscator is very simple, i use /q and point out an xml configuration file. it works like a charm when i manually run the exact command from the commandline.

But when the same commands are executed by Jenkins the following error is logged:

Use of this software implies acceptance of accompanying license agreement. LICENSED TO: SERIAL #: You must first accept the end user license agreement before using Dotfuscator.

For some reason Dotfuscator cant read the licensing information when it's ran by Jenkins. I cant find any information about this but something tells me that this is related to the user that Jenkins is executed under. What am i missing?


回答1:


As i thought it was something user related. this problem comes from that the user the Jenkins job is ran under has never accepted the Dotfuscator user agreement. There are two ways to resolve this:

Either you log into the machine with the user that is running the automated build and launch the Dotfuscator GUI and accept the license agreement

Or you can copy the following files:

C:\Users{user that installed/accepted agreement}\AppData\Local\PreEmptive Solutions\Dotfuscator Professional Edition\4.0\dfusrprf.xml
C:\Users{user that installed/accepted agreement}\AppData\Local\PreEmptive Solutions\Dotfuscator Professional Edition\4.0\dotfuscator.cfg
C:\ProgramData\PreEmptive Solutions\Dotfuscator Professional Edition\4.0\dotfuscator.dat

into the installation directory of dotfuscator (default is C:\Program Files (x86)\PreEmptive Solutions\Dotfuscator Professional Edition 4.13.0).




回答2:


I had a similar problem using Team Foundation Build Service running under Windows Server 2012.

According to Dotfuscator's tech support:

To resolve this you will need to move the following files:

C:\Users{User that installed dotfuscator}\AppData\Local\PreEmptive Solutions\Dotfuscator Professional Edition\4.0\dfusrprf.xml C:\Users{User that installed dotfuscator}\AppData\Local\PreEmptive Solutions\Dotfuscator Professional Edition\4.0\dotfuscator.cfg

Into the same folder on the user account that is running the automated build.

I was running my build service under NT AUTHORITY\NETWORK SERVICE. After some searching I found their home directories:

%systemroot%\ServiceProfiles\NetworkService

which usually translates as:

c:\Windows\ServiceProfiles\NetworkService



来源:https://stackoverflow.com/questions/24014338/dotfuscator-pro-cant-read-licensing-information-under-jenkins-buildserver

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!