  | 
	
		
	
	
		Как вытащить имя персонажа - Общение разработчиков - Программирование для Perfect World, общение и обсуждене разработок | 
	 
	 
	
		 
	 
 
	
	
		
	
	
    
        
            
             
            24.10.2012, 17:04
            
            
         | 
        
             
            #1
            
         | 
    
 
    
    
  
    | 
    
     | 
     
  
    | 
    
     | 
    
    
     | 
   
  
    
        Разведчик  
     | 
     
 
    
      
  
            
    
      
    
            
                 Регистрация: 20.10.2012  
                
                
                
                 Сообщений: 2
                   
 Популярность: 178  
                  
	 Сказал(а) спасибо: 0  
	
		
			
				Поблагодарили 6 раз(а) в 2 сообщениях
			
		
	 
     
 
             
                
               
                
       
                  
     | 
    
    
    
        
        
            
            
                 
                Как вытащить имя персонажа
             
             
            
        
        
        
            
               
    Все адреса знаю, смещение для ника 0x66C. Но вот там написано, что размер этого поля 8 байт типа wchar_t. Пытаюсь считывать в wchar_t 8 байт - выдает 1 символ иероглиф. Как правильно считать ник? И почему он занимает 8 байт, когда в нике мож быть до 9 символов?   
     
         
        
        
        
        
        
        
        
     | 
 
    | 
        
        
        
        
         
     | 
    
    
    
        
        
        
        
             
        
        
        
        
        
        
        
            
        
        
        
     | 
 
 
 
  
	 
	
		 
	 
 
	
	
		
	
	
    
        
            
             
            24.10.2012, 19:46
            
            
         | 
        
             
            #2
            
         | 
    
 
    
    
  
    | 
    
     | 
     
  
    | 
    
     | 
    
    
     | 
   
  
    
        Главнокомандующий  
     | 
     
 
    
      
  
            
    
      
    
            
                 Регистрация: 28.03.2009  
                
                
                
                 Сообщений: 1,666
                   
 Популярность: 67466  
                  
	 Сказал(а) спасибо: 246  
	
		
			
				Поблагодарили 1,560 раз(а) в 691 сообщениях
			
		
	 
     
 
             
                
               
                
       
                  
     | 
    
    
    
        
        
            
            
                 
                Re: Как вытащить имя персонажа
             
             
            
        
        
        
            
               
    0x66C + 0x0, string, unicode 
и да, причём здесь 8 байт?
     
         
        
        
        
        
        
        
        
        
            
                 
                
                    
                        Последний раз редактировалось AEBus; 24.10.2012 в 20:18.
                    
                    
                
             
        
        
      | 
 
    | 
        
        
        
        
         
     | 
    
    
    
        
        
        
        
             
        
        
        
        
        
        
        
            
        
        
        
     | 
 
 
 
  
	 
	
		 
	 
 
	
	
		
	
	
    
        
            
             
            25.10.2012, 20:45
            
            
         | 
        
             
            #3
            
         | 
    
 
    
    
  
    | 
    
     | 
     
  
    | 
    
     | 
    
    
     | 
   
  
    
        Разведчик  
     | 
     
 
    
      
  
            
    
      
    
            
                 Регистрация: 20.10.2012  
                
                
                
                 Сообщений: 2
                   
 Популярность: 178  
                  
	 Сказал(а) спасибо: 0  
	
		
			
				Поблагодарили 6 раз(а) в 2 сообщениях
			
		
	 
     
 
             
                
               
                
       
                  
     | 
    
    
    
        
        
            
            
                 
                Re: Как вытащить имя персонажа
             
             
            
        
        
        
            
               
    Все равно я не могу выцепить ник, получаю только один иероглиф, пишу в студии (2008). Считываю 4 байта в DWORD, потом конвертирую в wchar_t, потом в стринг и вывожу - итог 䗔. Как правильно делать?
     
         
        
        
        
        
        
        
        
     | 
 
    | 
        
        
        
        
         
     | 
    
    
    
        
        
        
        
             
        
        
        
        
        
        
        
            
        
        
        
     | 
 
 
 
  
	 
	
		 
	 
 
	
	
		
	
	
    
        
            
             
            26.10.2012, 09:34
            
            
         | 
        
             
            #4
            
         | 
    
 
    
    
  
    | 
    
     | 
     
  
    | 
    
     | 
    
    
     | 
   
  
    
        Рыцарь-капитан  
     | 
     
 
    
      
  
            
    
      
    
            
                 Регистрация: 14.06.2012  
                
                
                
                 Сообщений: 511
                   
 Популярность: 7566  
                  
	 Сказал(а) спасибо: 4  
	
		
			
				Поблагодарили 181 раз(а) в 88 сообщениях
			
		
	 
     
 
             
                
               
                
       
                  
     | 
    
    
    
        
        
            
            
                 
                Re: Как вытащить имя персонажа
             
             
            
        
        
        
        
        
        
        
        
        
        
     | 
 
    | 
        
        
        
        
         
     | 
    
    
    
        
        
        
        
             
        
        
        
        
        
        
        
            
        
        
        
     | 
 
 
 
  
	 
	
		 
	 
 
	
	
		
	
	
    
        
            
             
            26.10.2012, 14:51
            
            
         | 
        
             
            #5
            
         | 
    
 
    
    
  
    | 
    
     | 
     
  
    | 
    
     | 
    
    
     | 
   
  
    
        Разведчик  
     | 
     
 
    
      
  
            
    
      
    
            
                 Регистрация: 19.08.2012  
                
                
                
                 Сообщений: 13
                   
 Популярность: -176  
                  
	 Сказал(а) спасибо: 1  
	
		
			Поблагодарили 1 раз в 1 сообщении
		
	 
     
 
             
                
               
                
       
                  
     | 
    
    
    
        
        
            
            
                 
                Re: Как вытащить имя персонажа
             
             
            
        
        
        
            
               
    
  
        
        
          
                
                
                  
                        
                          | 
                        
                        Цитата: | 
                        
                          | 
                   
                 
                 | 
                
                 | 
                
                
                
                 | 
                
                
                
                 | 
           
         
        
          
                | 
                 | 
                 | 
                
                 | 
           
          
                | 
                 | 
                
                позвольте поинтересоваться всей струтурой чтения с памяти надеюсь вы считываете не просто со смещения 0x66C
                 | 
                
                 | 
           
          
                
                  | 
                
                 | 
                
                  | 
           
         
         | 
   
 
Скорее всего, так и есть. 
Считывать нужно с адреса, находящегося в 0х66С. Т е в записи это +0х66С +0, в массив wchar_t[20]. 
Преобразовывать ни во что не нужно, если только в анси. первые 9 знаков или менее (на каждый знак по 2 байта) составляют имя, последние два байта окончание строки /0x00 /0x00
 Тут исход на билдере, поковыряй, для начинающего много интересного.
     
          
        
        
        
        
        
        
        
     | 
 
    | 
        
        
        
        
         
     | 
    
    
    
        
        
        
        
             
        
        
        
        
        
        
        
            
        
        
        
     | 
 
 
 
  
	 
	
		 
	 
 
	
	
		
	
	
    
        
            
             
            26.10.2012, 15:23
            
            
         | 
        
             
            #6
            
         | 
    
 
    
    
  
    | 
    
     | 
     
  
    | 
    
     | 
    
    
     | 
   
  
    
        Разведчик  
     | 
     
 
    
      
  
            
    
      
    
            
                 Регистрация: 20.10.2012  
                
                
                
                 Сообщений: 2
                   
 Популярность: 178  
                  
	 Сказал(а) спасибо: 0  
	
		
			
				Поблагодарили 6 раз(а) в 2 сообщениях
			
		
	 
     
 
             
                
               
                
       
                  
     | 
    
    
    
        
        
            
            
                 
                Re: Как вытащить имя персонажа
             
             
            
        
        
        
            
               
    Все разобрался в чем прикол. Просто когда смотрел смещения, думал - нахрена там еще 0x0 прибавлять? А оказывается не зря там этот нолик указан   , в остальном сам разобрался.
     
          
        
        
        
        
        
        
        
     | 
 
    | 
        
        
        
        
         
     | 
    
    
    
        
        
        
        
             
        
        
        
        
        
        
        
            
        
        
        
     | 
 
 
 
  
	 
	
		 
	 
 
	
	
		
	
	
    
        
            
             
            30.10.2012, 14:11
            
            
         | 
        
             
            #7
            
         | 
    
 
    
    
  
    | 
    
     | 
     
  
    | 
    
     | 
    
    
     | 
   
  
    
        Разведчик  
     | 
     
 
    
      
  
            
    
      
    
            
                 Регистрация: 05.10.2012  
                
                
                
                 Сообщений: 4
                   
 Популярность: 10  
                  
	 Сказал(а) спасибо: 0  
	
		
			
				Поблагодарили 0 раз(а) в 0 сообщениях
			
		
	 
     
 
             
                
               
                
       
                  
     | 
    
    
    
        
        
            
            
                 
                Re: Как вытащить имя персонажа
             
             
            
        
        
        
            
               
    В студии 2010 организовал так: 
	Код: 
	             //функция чтения памяти:
wchar_t* Client::Read_Char(UInt32 addr)
{
HANDLE hProcess=OpenProcess(PROCESS_ALL_ACCESS,false,pid); // открываем процесс
wchar_t value[40];
ReadProcessMemory(hProcess,(void*)addr,&value,(40),0);  // считываем значение по заданному адресу
  CloseHandle(hProcess); // закроем процесс
  return value; // вернём считанное значение
}
                //заталкивание имени в System::string^
String^ str;
for(int i=0; i<=20 ; i++)
str=str+((Read_Char(NmAdr()+0x0)+i)->ToString());
 както так
     
          
        
        
        
        
        
        
        
     | 
 
    | 
        
        
        
        
         
     | 
    
    
    
        
        
        
        
             
        
        
        
        
        
        
        
            
        
        
        
     | 
 
 
 
  
	 
	
		 
	 
 
	
	
		
	
	
    
        
            
             
            02.11.2012, 02:55
            
            
         | 
        
             
            #8
            
         | 
    
 
    
    
  
    | 
    
     | 
     
  
    | 
    
     | 
    
    
     | 
   
  
    
        Главнокомандующий  
     | 
     
 
    
      
  
            
    
      
    
            
                 Регистрация: 28.03.2009  
                
                
                
                 Сообщений: 1,666
                   
 Популярность: 67466  
                  
	 Сказал(а) спасибо: 246  
	
		
			
				Поблагодарили 1,560 раз(а) в 691 сообщениях
			
		
	 
     
 
             
                
               
                
       
                  
     | 
    
    
    
        
        
            
            
                 
                Re: Как вытащить имя персонажа
             
             
            
        
        
        
        
        
        
        
        
        
        
     | 
 
    | 
        
        
        
        
         
     | 
    
    
    
        
        
        
        
             
        
        
        
        
        
        
        
            
        
        
        
     | 
 
 
 
  
	 
	
		 
	 
 
 
	
		
	
	
	
	
	
		
	
		 
		Ваши права в разделе
	 | 
 
	
		
		Вы не можете создавать новые темы 
		Вы не можете отвечать в темах 
		Вы не можете прикреплять вложения 
		Вы не можете редактировать свои сообщения 
		 
		
		
		
		
		HTML код Выкл. 
		 
		
	  | 
 
 
	 | 
	
		
	 | 
 
 
 
Заявление об ответственности / Список мошенников
Часовой пояс GMT +4, время: 09:38. 
		 
	 
 
 | 
  |