Искам да объркам своя изходен код с помощта на ConfuserEx, така че създадох файл на проекта ConfuserEx, който изглежда така:
<project baseDir="." outputDir="." xmlns="http://confuser.codeplex.com">
<rule pattern="true" inherit="false">
<protection id="rename" />
<protection id="ctrl flow" />
<protection id="ref proxy" />
<protection id="anti debug" />
<protection id="anti dump" />
<protection id="constants" />
<protection id="resources" />
<protection id="anti tamper" />
</rule>
<module path="MainApplication\bin\Release\MainApplication.exe" />
<module path="MainApplication\bin\Release\Component.Hardware.dll" />
<module path="MainApplication\bin\Release\Component.Log.dll" />
<module path="MainApplication\bin\Release\Component.Service.dll" />
<module path="MainApplication\bin\Release\Component.Software.dll" />
<module path="MainApplication\bin\Release\AsynchronousSocket.dll" />
<module path="MainApplication\bin\Release\Instrumentation.dll" />
</project>
Тъй като искам да разположа приложението си чрез настройка, създадох InstallShield Setup на моя MainApplication-Project. Избирам първичен изход.
В моето Postbuild-Event във Visual Studio извиквам Confuser.CLI.exe с crproj-файла като параметър. Въпреки това само MainApplication.exe
и AsynchronousSocket.dll + Instrumentation.dll
са модифицирани с ConfuserEx. Файловете 4 Component.*.dll не са. Трябва да кажа, че всички сглобки са различни проекти. Така че структурата на моето решение за проект изглежда така:
MyProject
MyProject.MainApplication
MyProject.Component.Hardware
MyProject.Component.Software
MyProject.Component.Log
MyProject.Component.Service
MyProject.AsynchronousSocket
MyProject.Instrumentation
MyProject.Setup
MyProject.sln
MyProject.crpoj
Предполагам, че вземам грешните модули, използвани от InstallShield. Също така се опитах да взема сглобките в MyProject.Component.Service\bin\Release
и MyProject.Component.Service\obj\Release
, но нито една от тези опции не работи. Не мисля, че използването на MainApplication\obj\Release
работи, защото се намира само MainApplication.exe
.
Може ли някой да ми каже откъде InstallShield взема първичния изход или ако пропускам нещо друго?