Postado Dezembro 19, 2012 12 anos Olá estou aqui de novo pois hoje estou muito animado com meu novo bot que estou desenvolvendo logo postarei print's para vocês verem... porém hoje me deparei com um pequeno problema eu não estou premmy no global então não há como eu testar todas as minhas funções perfeitamente... então troquei minhas const para versão 9.70 aonde há otservs bons para me ajudar a testar... Então eu vi que o meu bot não lê se for em otserv, apenas em global, não sei o que posso mudar não sei o que posso trocar para fazer ele ler a janela do tibia sendo ela global ou otserv... alguém tem alguma idéia? estou usando Delphi. Preciso trocar algo aqui? function GetTibiaBaseAddress(ProcessID: Cardinal): Pointer; var Modules: Array of HMODULE; cbNeeded, i: Cardinal; ModuleInfo: TModuleInfo; ModuleName: Array [0 .. MAX_PATH] of Char; PHandle: THandle; begin Result := nil; SetLength(Modules, 1024); PHandle := OpenProcess(PROCESS_QUERY_INFORMATION + PROCESS_VM_READ, FALSE, ProcessID); if (PHandle <> 0) then begin EnumProcessModules(PHandle, @Modules[0], 1024 * SizeOf(HMODULE), cbNeeded); SetLength(Modules, cbNeeded div SizeOf(HMODULE)); for i := 0 to Length(Modules) - 1 do begin GetModuleBaseName(PHandle, Modules[i], ModuleName, SizeOf(ModuleName) ); if AnsiCompareText('Tibia.exe', ModuleName) = 0 then begin GetModuleInformation(PHandle, Modules[i], @ModuleInfo, SizeOf (ModuleInfo)); Result := ModuleInfo.lpBaseOfDll; CloseHandle(PHandle); Exit; end; end; end; end; Ou aonde pode ser meu erro? obs: estou fazendo um bot com códigos de vários sites diferentes... obg
Postado Dezembro 19, 2012 12 anos if AnsiCompareText('Tibia.exe', ModuleName) = 0 then Veja se o executável do otserv está com o nome Tibia.exe http://balfprogramador.blogspot.comhttp://mynameisbalf.blogspot.com
Participe da conversa
Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.