  | 
	
		
	
	
		Инвентарь... - Общение разработчиков - Программирование для Perfect World, общение и обсуждене разработок | 
	 
	 
	
		 
	 
 
	
	
		
	
	
    
        
            
             
            17.02.2012, 00:21
            
            
         | 
        
             
            #1
            
         | 
    
 
    
    
  
    | 
    
     | 
     
  
    | 
    
     | 
    
    
     | 
   
  
    
        Разведчик  
     | 
     
 
    
      
  
            
    
      
    
            
                 Регистрация: 23.12.2011  
                
                
                
                 Сообщений: 42
                   
 Популярность: 192  
                  
	 Сказал(а) спасибо: 26  
	
		
			
				Поблагодарили 11 раз(а) в 9 сообщениях
			
		
	 
     
 
             
                
               
                
       
                  
     | 
    
    
    
        
        
            
            
                 
                Инвентарь...
             
             
            
        
        
        
            
               
    Хотелось бы узнать как вывести ячейку предмета, по его ID на Delphi 
Вот моя функция но она не работает...
 
	Код: 
	var
Wnd:THandle;
Hndl:array[0..255] of Char;
buf,BC:DWord;
bufs,BCS:DWord;
hProcess,PID,PID1:DWord;
ibuf,d,d2,max_z,id,ibufs:Integer;
begin
Wnd:=FindWindow('ElementClient Window',nil);
GetWindowThreadProcessId(Wnd,@PID);
hProcess:=OpenProcess(PROCESS_ALL_ACCESS,False,PID);
d:=0;
while (hProcess<>0) and (PID<>PID1) do
  begin
  GetWindowText(Wnd,Hndl,SizeOf(Hndl));
  ReadProcessMemory(hProcess,ptr(PW_BASE_ADDRESS),@ibuf,sizeof(ibuf),BC);
  ReadProcessMemory(hProcess,ptr(ibuf+$1C),@ibuf,sizeof(ibuf),BC);
  ReadProcessMemory(hProcess,ptr(ibuf+$34),@ibuf,sizeof(ibuf),BC);
  ReadProcessMemory(hProcess,ptr(ibuf+$CAC),@ibuf,sizeof(ibuf),BC);
  ReadProcessMemory(hProcess,ptr(ibuf+$10),@buf,sizeof(buf),BC);
  max_z:=buf;
  for d2:=0 to max_z do
  begin
  ReadProcessMemory(hProcess,ptr(PW_BASE_ADDRESS),@ibufs,sizeof(ibufs),BCS);
  ReadProcessMemory(hProcess,ptr(ibufs+$1C),@ibufs,sizeof(ibufs),BCS);
  ReadProcessMemory(hProcess,ptr(ibufs+$34),@ibufs,sizeof(ibufs),BCS);
  ReadProcessMemory(hProcess,ptr(ibufs+$CAC),@ibufs,sizeof(ibufs),BCS);
  ReadProcessMemory(hProcess,ptr(ibufs+$C),@ibufs,sizeof(ibufs),BCS);
  ReadProcessMemory(hProcess,ptr(ibufs+d2),@ibufs,sizeof(ibufs),BCS);
  ReadProcessMemory(hProcess,ptr(ibufs*$4),@ibufs,sizeof(ibufs),BCS);
  ReadProcessMemory(hProcess,ptr(ibufs+$08),@bufs,sizeof(bufs),BCS);
  id:=bufs;
  if id=21383 then
  begin
  number:=d2;
  end;
  end;
  FID[d]:=Wnd;
  PID:=PID1;
  inc(d)
  end;
  CloseHandle(hProcess);
end;
 
     
         
        
        
        
        
        
        
        
     | 
 
    | 
        
        
        
        
         
     | 
    
    
    
        
        
        
        
             
        
        
        
        
        
        
        
            
        
        
        
     | 
 
 
 
  
	 
	
		 
	 
 
	
	
		
	
	
    
        
            
             
            17.02.2012, 08:31
            
            
         | 
        
             
            #2
            
         | 
    
 
    
    
  
    | 
    
     | 
     
  
    | 
    
     | 
    
    
     | 
   
  
    
        Рыцарь-капитан  
     | 
     
 
    
      
  
            
    
      
    
            
                 Регистрация: 07.10.2009  
                
                
                
                 Сообщений: 496
                   
 Популярность: 2687  
                  
	 Сказал(а) спасибо: 64  
	
		
			
				Поблагодарили 325 раз(а) в 105 сообщениях
			
		
	 
     
 
             
                
               
                
       
                  
     | 
    
    
    
        
        
            
            
                 
                Re: Инвентарь...
             
             
            
        
        
        
        
        
        
        
        
        
            
             ________________  
                -------------------------------------------- 
 Для просмотра ссылок или изображений в подписях, у Вас должно быть не менее 10 сообщение(ий). Сейчас у Вас 0 сообщение(ий).  -  Совершенный автологин для Perfect World [RUOFF, PWI, Фришек 1.4.4 - 1.4.5] 
-------------------------------------------- 
 Для просмотра ссылок или изображений в подписях, у Вас должно быть не менее 10 сообщение(ий). Сейчас у Вас 0 сообщение(ий). - Патч на Горны, Красный (да и любой) чат, Анфриз, Бесконечный зум, Моментальный разгон на полете для RUOFF, PWI и прочих 1.4.6 и фришек 1.4.4, 1.4.5.  
-------------------------------------------- 
 Для просмотра ссылок или изображений в подписях, у Вас должно быть не менее 10 сообщение(ий). Сейчас у Вас 0 сообщение(ий).  - патчер для серверов 1.4.5 и 1.4.4 работающий с включенной игрой. 
--------------------------------------------
             
        
        
        
        
     | 
 
    | 
        
        
        
        
         
     | 
    
    
    
        
        
        
        
             
        
        
        
        
        
        
        
            
        
        
        
     | 
 
 
 
  
	 
	
		 
	 
 
	
	
		
	
	
    
        
            
             
            17.02.2012, 13:46
            
            
         | 
        
             
            #3
            
         | 
    
 
    
    
  
    | 
    
     | 
     
  
    | 
    
     | 
    
    
     | 
   
  
    
        Разведчик  
     | 
     
 
    
      
  
            
    
      
    
            
                 Регистрация: 23.12.2011  
                
                
                
                 Сообщений: 42
                   
 Популярность: 192  
                  
	 Сказал(а) спасибо: 26  
	
		
			
				Поблагодарили 11 раз(а) в 9 сообщениях
			
		
	 
     
 
             
                
               
                
       
                  
     | 
    
    
    
        
        
            
            
                 
                Re: Инвентарь...
             
             
            
        
        
        
        
        
        
        
        
        
        
     | 
 
    | 
        
        
        
        
         
     | 
    
    
    
        
        
        
        
             
        
        
        
        
        
        
        
            
        
        
        
     | 
 
 
 
  
	 
	
		 
	 
 
	
	
		
	
	
    
        
            
             
            17.02.2012, 13:57
            
            
         | 
        
             
            #4
            
         | 
    
 
    
    
  
    | 
    
     | 
     
  
    | 
    
     | 
    
    
     | 
   
  
    
        Рыцарь-капитан  
     | 
     
 
    
      
  
            
    
      
    
            
                 Регистрация: 07.10.2009  
                
                
                
                 Сообщений: 496
                   
 Популярность: 2687  
                  
	 Сказал(а) спасибо: 64  
	
		
			
				Поблагодарили 325 раз(а) в 105 сообщениях
			
		
	 
     
 
             
                
               
                
       
                  
     | 
    
    
    
        
        
            
            
                 
                Re: Инвентарь...
             
             
            
        
        
        
        
        
        
        
        
        
            
             ________________  
                -------------------------------------------- 
 Для просмотра ссылок или изображений в подписях, у Вас должно быть не менее 10 сообщение(ий). Сейчас у Вас 0 сообщение(ий).  -  Совершенный автологин для Perfect World [RUOFF, PWI, Фришек 1.4.4 - 1.4.5] 
-------------------------------------------- 
 Для просмотра ссылок или изображений в подписях, у Вас должно быть не менее 10 сообщение(ий). Сейчас у Вас 0 сообщение(ий). - Патч на Горны, Красный (да и любой) чат, Анфриз, Бесконечный зум, Моментальный разгон на полете для RUOFF, PWI и прочих 1.4.6 и фришек 1.4.4, 1.4.5.  
-------------------------------------------- 
 Для просмотра ссылок или изображений в подписях, у Вас должно быть не менее 10 сообщение(ий). Сейчас у Вас 0 сообщение(ий).  - патчер для серверов 1.4.5 и 1.4.4 работающий с включенной игрой. 
--------------------------------------------
             
        
        
        
        
     | 
 
    | 
        
        
        
        
         
     | 
    
    
    
        
        
        
        
             
        
        
        
        
        
        
        
            
        
        
        
     | 
 
 
 
  
	 
	
		 
	 
 
	
	
		
	
	
    
        
            
             
            17.02.2012, 20:46
            
            
         | 
        
             
            #5
            
         | 
    
 
    
    
  
    | 
    
     | 
     
  
    | 
    
     | 
    
    
     | 
   
  
    
        Сержант  
     | 
     
 
    
      
  
            
    
      
    
            
                 Регистрация: 12.09.2010  
                
                
                
                 Сообщений: 165
                   
 Популярность: 375  
                  
	 Сказал(а) спасибо: 70  
	
		
			
				Поблагодарили 39 раз(а) в 25 сообщениях
			
		
	 
     
 
             
                
               
                
       
                  
     | 
    
    
    
        
        
            
            
                 
                Re: Инвентарь...
             
             
            
        
        
        
            
               
    samosi, не охото смотреть в чем ошибка. Скину уже рабочий код(спасибо SEModer'у) 
	Код: 
	Tinv = record
  Name:string;
  ID,Count,InvCell:integer;
  end;
invent:array [0..63] of TInv;
...
...
...
...
procedure ScanInventory;
var
i:integer;
data,BytesCount,count,ID,invmax,invstruct,itemstruct,toch:dword;
begin
  ReadProcessMemory(hProcess,ptr(GA),@data,sizeof(data),BytesCount);
  ReadProcessMemory(hProcess,ptr(data+$34),@data,sizeof(data),BytesCount);
  ReadProcessMemory(hProcess,ptr(data+$CAC),@data,sizeof(data),BytesCount);
  ReadProcessMemory(hProcess,ptr(data+$10),@invmax,sizeof(invmax),BytesCount);
  ReadProcessMemory(hProcess,ptr(data+$C),@invstruct,sizeof(invstruct),BytesCount);
  for i:=0 to invmax-1 do
  begin
  ReadProcessMemory(hProcess,ptr(invstruct+4*i),@itemstruct,sizeof(itemstruct),rw);
  ReadProcessMemory(hProcess,ptr(itemstruct+$8),@ID,sizeof(ID),rw);
  ReadProcessMemory(hProcess,ptr(itemstruct+$10),@count,sizeof(count),rw);
  ReadProcessMemory(hProcess,ptr(itemstruct+$C),@toch,sizeof(toch),rw);
    Invent[i].ID:=ID;
    Invent[i].Count:=Count;
    Invent[i].InvCell:=I;
  end;
end;
 
     
         
        
        
        
        
        
        
            
        
        
        
        
        
            
                 
                
                    
                        Последний раз редактировалось lcd1232; 17.02.2012 в 22:10.
                    
                    
                
             
        
        
      | 
 
    | 
        
        
        
        
         
     | 
    
    
    
        
        
        
        
             
        
        
        
        
        
        
        
            
        
        
        
     | 
 
 
 
  
	 
	
		 
	 
 
	
	
		
	
	
    
        
            
             
            17.02.2012, 21:41
            
            
         | 
        
             
            #6
            
         | 
    
 
    
    
  
    | 
    
     | 
     
  
    | 
    
     | 
    
    
     | 
   
  
    
        Лейтенант-командор  
     | 
     
 
    
      
  
            
    
      
    
            
                 Регистрация: 12.08.2010  
                
                
                
                 Сообщений: 727
                   
 Популярность: 30569  
 Золото Zhyk.Ru: 1     
                  
	 Сказал(а) спасибо: 57  
	
		
			
				Поблагодарили 645 раз(а) в 386 сообщениях
			
		
	 
     
 
             
                
               
                
       
                  
     | 
    
    
    
        
        
            
            
                 
                Re: Инвентарь...
             
             
            
        
        
        
            
               
    Мой код: 
	Код: 
	var
hProcess,PID,buf,ibuf,BC:DWord;
i:Integer;
j:array [0..31] of Integer;
begin
PID:=GetWindowThreadProcessId(FindWindow('ElementClient Window','Perfect World'),@PID);
hProcess:=OpenProcess(PROCESS_ALL_ACCESS,False,PID);
 for i:=0 to 31 do
  begin
  ReadProcessMemory(hProcess,ptr(BA),@ibuf,sizeof(ibuf),BC);
  ReadProcessMemory(hProcess,ptr(ibuf+$1C),@ibuf,sizeof(ibuf),BC);
  ReadProcessMemory(hProcess,ptr(ibuf+$34),@ibuf,sizeof(ibuf),BC);
  ReadProcessMemory(hProcess,ptr(ibuf+$CAC),@ibuf,sizeof(ibuf),BC);
  ReadProcessMemory(hProcess,ptr(ibuf+$C),@ibuf,sizeof(ibuf),BC);
  ReadProcessMemory(hProcess,ptr(ibuf+$4*i),@ibuf,sizeof(ibuf),BC);
  ReadProcessMemory(hProcess,ptr(ibuf+$8),@buf,sizeof(buf),BC);
  j[i]:=buf;
  end;
CloseHandle(hProcess);
end;
 Можешь приделать читку количества ячеек с клиента...
     
          
        
        
        
        
        
        
            
             ________________  
                Принимаются пожертвования любых размеров в фонд поддержки начинающих программистов  Для просмотра ссылок или изображений в подписях, у Вас должно быть не менее 10 сообщение(ий). Сейчас у Вас 0 сообщение(ий).
  
Кошельки: WMZ - Z276844220882; WMR - R231028582939; WMU - U394136909210; ЯД - 410011494605270. 
Perfect World: PWDatabaseScanner, Client, PWNickRenamer, PWClientRenamer, База логинов PW, Гайд по варУ, Зарабатываем репутацию. 
Delphi: Авторизация на сайте с помощью Indy, Загрузка изображений с интернета в TImage с помощью Indy, Автоматическая смена стандартной версии Indy в Delphi на Indy 10.0.76 / 10.1.5, Основы парсинга с помощью Indy, Делаем Updater до программы с помощью Indy. 
Other: ShowIP, FFUUU смайлы в QIP, Как играть в Minecraft (видеокурс), Как мы захватили человечество :D, Энергия в Лицемер/TopFace, PasGen.
             
        
        
        
        
     | 
 
    | 
        
        
        
        
         
     | 
    
    
    
        
        
        
        
             
        
        
        
        
        
        
        
            
        
        
        
     | 
 
 
 
  
	 
	
		 
	 
 
 
	
		
	
	
	
	
	
		
	
		 
		Ваши права в разделе
	 | 
 
	
		
		Вы не можете создавать новые темы 
		Вы не можете отвечать в темах 
		Вы не можете прикреплять вложения 
		Вы не можете редактировать свои сообщения 
		 
		
		
		
		
		HTML код Выкл. 
		 
		
	  | 
 
 
	 | 
	
		
	 | 
 
 
	
		
			 
			Похожие темы
		 | 
	 
	| Тема | 
	Автор | 
	Раздел | 
	Ответов | 
	Последнее сообщение | 
 
	| 
		
		[Помогите!] пропал инвентарь
	 | 
	danrai | 
	Общение и обсуждение, архив Point Blank | 
	6 | 
	22.11.2011 09:56 | 
 
	| 
		
		 инвентарь
	 | 
	komesar | 
	Вопросы и ответы: RF Online | 
	2 | 
	26.06.2010 22:23 | 
 
	| 
		
		[Информация] Получаем доп. инвентарь!
	 | 
	Hummel | 
	Rising Force Online | 
	4 | 
	18.08.2009 13:08 | 
 
 
 
Заявление об ответственности / Список мошенников
Часовой пояс GMT +4, время: 09:37. 
		 
	 
 
 | 
  |