![]() |
||
*停權中*
加入日期: Sep 2013
文章: 48
|
C#語言請益
外行人請教
最近長輩拿了個用C#編寫的EXE檔給我 想要修改顯示的字樣 我照一般程序用.net Reflector還原成專案檔 然後用VB 2012跟ultraedit去做編譯 大約是把幾個中文字給換掉 這樣 但是不管怎麼改 都會出現錯誤 輸出的exe也不能用 請教大概是哪邊出了問題呢 ![]() 應該怎麼去改才正確? |
|||||||
![]() |
![]() |
Basic Member
加入日期: Oct 2005
文章: 26
|
引用:
會不會是需要lib |
|||
![]() |
![]() |
*停權中*
加入日期: Sep 2013
文章: 48
|
引用:
請問lib是...? 如果反編譯的專案檔一打開就出現錯誤 是出現所謂的偏移嗎? ![]() |
|
![]() |
![]() |
*停權中*
加入日期: May 2014 您的住址: 某個不大不小的島
文章: 628
|
直接暴力改字串比較快??
UE /Madedit 直接改. |
![]() |
![]() |
*停權中*
加入日期: Sep 2013
文章: 48
|
引用:
用16進位找不到對應的中文字耶 ![]() 需要反編譯再去抓form嗎? 此文章於 2015-03-01 11:34 PM 被 人生開始 編輯. |
|
![]() |
![]() |
Power Member
![]() ![]() 加入日期: Jan 2002 您的住址: Taipei
文章: 664
|
引用:
big5? unicode? .net 應該是用 unicode (UTF16-LE) 了.
__________________
![]() Tommy 碎碎念... |
|
![]() |
![]() |
Golden Member
![]() ![]() ![]() ![]() 加入日期: Jun 2002 您的住址: Taiwan
文章: 2,668
|
你用.NET Reflector解出來後,可以在不更動原始碼的情況下重新編譯出執行檔嗎?
如果可以的話,那有可能是你反解回來後,原始碼檔案是ANSI格式,你先用Notepad++之類的把原始檔都先Convert成UTF-8後,再編一次看看。 如果UTF-8編得成功,你再改中文字串,然後再編看看。 |
![]() |
![]() |
*停權中*
加入日期: Sep 2013
文章: 48
|
引用:
事實上也有點困難耶... EXE解出來之後是 .vbporj *1 WindowsApplication1.Form1.resources WindowsApplication1.Resources .vb*2 WindowsApplication1 資料夾*1 內有 My資料夾*1 Form1.vb*1 要改的內容主要存在Form1.vb 直接開EXE找不到 但如果把EXE解開 就很難還原成EXE 或者還原後也不能用 ![]() |
|
![]() |
![]() |
Basic Member
加入日期: Jan 2006
文章: 21
|
用.NET Reflector ,通常都只是想看某個部份對方是怎麼寫,或是想得到裡面寫死的字串
如果不能拿到原始碼 解出後也不能重新編譯出執行檔 如果要修改到能重新編譯出執行檔 也許費的功夫可能不比重寫少 |
![]() |
![]() |
*停權中*
加入日期: Feb 2015
文章: 3
|
有沒有被加殼?一二三四五六七八
|
![]() |
![]() |