2017-02-14 11 views
2

저는 최근 Visual Studio 2015 업데이트 3에서 Dotfuscator CE를 사용하여 DLL을 난독 화했습니다. 여기에 사용한 Dotfuscator.xml 파일이 있습니다. 난독 화 후 Settings.settings 파일에서 읽기

<?xml version="1.0" encoding="utf-8" standalone="no"?> 
<!DOCTYPE dotfuscator SYSTEM "http://www.preemptive.com/dotfuscator/dtd/dotfuscator_v2.3.dtd"> 
<dotfuscator version="2.3"> 
    <propertylist> 
    <property name="SourceDirectory" value="This Path Will Be Replaced By Visual Studio" /> 
    <property name="SourceFile" value="This Filename Will Be Replaced By Visual Studio" /> 
    </propertylist> 
    <input> 
    <asmlist> 
     <inputassembly> 
     <option>library</option> 
     <file dir="${SourceDirectory}\" name="${SourceFile}" /> 
     </inputassembly> 
    </asmlist> 
    </input> 
    <output> 
    <file dir="${SourceDirectory}\" /> 
    </output> 
</dotfuscator> 

이제 문제는 난독 어셈블리는 Settings.settings에 저장된 몇 가지 정보를 포함합니다. 파일, 내 코드가 설정 파일에서 데이터에 액세스하려고하면 다음 예외로 인해 실패합니다. "난독 후 오류 Dotfuscator"

Dim strURI As String = My.Settings.ProxyTestURL 

을 내가 비슷한 질문이 알고

설정 특성 'ProxyTestURL은'여기

이 설정을 읽을 수있는 구문을 찾을 수 없습니다 하지만 거기에 내 의견을 두지 만, 여기에도 나는 내 설정 파일 리터럴을 (필자가 언급 한대로) 이름을 바꾸는 대신에 두 번째 의견과보다 견고한 솔루션을 기대합니다.

+1

그가 보는 다른 질문은 http://stackoverflow.com/questions/17215726/dotfuscator-error-after-obfuscation –

답변

1

My.Settings의 이름을 변경하지 말아야합니다. 이렇게하는 방법은 the docs입니다.

+1

에 있습니다. GUI가이 제외 사항을 자동으로 적용한다고 생각합니다. 구성 파일을 직접 편집하지 않고 GUI로 시작하면 훨씬 더 나은 결과를 얻을 수 있습니다. –

+0

답장을 보내 주셔서 감사합니다. GUI를 사용하고 수동으로 제외 목록에 MySettings 파일을 추가했습니다. 문제가 해결되었습니다. 그러나, 나는 아직도 빌드 명령에서 CLI를 사용하고있다. 그렇지 않으면 내 DLL을 Visual Studio에서 빌드하자마자 GUI가 35 개의 모든 DLL에 대해 차례로 열립니다 (/ q 매개 변수가 전달 되더라도). GUI에서 다시 빌드 단추를 눌러야합니다. 이 추가 단계를 피하기 위해 게시 빌드 이벤트에서 CLI를 사용하고 있습니다. –

+0

네, 혼란스러워서 죄송합니다. 일반적으로 GUI를 설정 파일 생성기로 생각하고 CLI를 실제 obfuscator로 생각하는 것이 가장 간단합니다. 그들은 각각 실제로 어느 쪽의 일을 할 수도 있지만, 그런 식으로 일하는 것이 가장 자연 스럽다고 느낍니다. –