![]()  | 
    
    ||
| 
			
			
			
			 *停權中*  
			
		
			
			
			加入日期: 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
					
				 
				 | 
	
	
		
		
		
									  
		
		 有沒有被加殼?一二三四五六七八 
				
		
		
		
		
		
		
		
		
	
	 | 
| 
      
				 |