knightcoder Posted May 8, 2006 at 11:20 AM Report #26303 Posted May 8, 2006 at 11:20 AM Reparei que este tópico foi bloqueado, e quanto a mim erradamente. Quando começaram a discutir o problema levaram desde inicio, isto para um outro caminho..."crackar". Quem usa este forum não terá o intuito de crackar programas mas sim de aprender novas coisas ou ajudar os outros, por isso deixo aqui o meu contributo. Agora voltando ao problema inicial: Sim é possível alterar os textos das janelas, botões, menus, etc das aplicações, desde que estas sejam nativas do windows. A API do Windows tem alguma funções interessantes que permitem fazer isto, e algo mais até: FindWindow MoveWindow GetClassName etc... Usando algumas destas funções da API do windows é possivel desenvolver uma aplicação que altere detrminadas caracteristicas de uma outra, sem a modificar. Deixo aqui alguns "code snippets" em Delphi que provam isso mesmo: Alterar o título da janela do Notepad: SetWindowText(FindWindow('notepad', nil), 'O meu titulo!'); Altera o tamanho da janela de Notepad: var MyHandle: THandle; WinRect: TRect; begin MyHandle := FindWindow(nil, 'Untitled - Notepad'); GetWindowRect(MyHandle, WinRect); MoveWindow(MyHandle, WinRect.Left, WinRect.Top, 300, 300, True); end; E agora um pouco mais elaborado, aumentar o tamanho do botão iniciar do Windows e mudar o seu texto: var Tray,Child: HWnd; begin Tray := FindWindow ('Shell_TrayWnd', Nil); Child := GetWindow (Tray, GW_CHILD); SetWindowText(Child, 'O meu botão'); SetWindowPos(Child, HWND_TOP, 10, 1, 200, 30, SWP_SHOWWINDOW); Estes exemplos são em Delphi mas facilmente convertidos para outra linguagem, pois usam exclusivamente a funções da API do Windows. Boa programação!
David Pintassilgo Posted May 8, 2006 at 11:50 AM Report #26309 Posted May 8, 2006 at 11:50 AM Muito bom post, assim 'a conversa' já está a levar um caminho correcto. cool stuffs to check. http://blog.zxcoders.com//
brink@ero Posted May 8, 2006 at 11:50 AM Report #26310 Posted May 8, 2006 at 11:50 AM Boas knightcoder. Excelente explicação, eu desconhecia essa funcionalidade/possibilidade de editar aplicações nativas do windows. 👍 Se não me engano o Me_Suis_Boss não chegou a dizer qual era o programa que pretendia editar. Mas acho que ele refere a algum programa externo, fora das aplicações nativas do Windows. ? Reparei que este tópico foi bloqueado, e quanto a mim erradamente. Sempre que quiseres reabrir um tópico, basta enviar uma PM a um moderador a explicar o motivo. Não há necessidade de criar um 2.º tópico ? Cumpr. brink@ero 😄
M6 Posted May 8, 2006 at 05:25 PM Report #26376 Posted May 8, 2006 at 05:25 PM Esse tipo de técnicas FindWindow e afins, é também usada para garantir a existência de uma única instância de uma aplicação a correr ao mesmo tempo. Basicamente: verificar se existe alguma instância a correr, se sim invocar a instância para primeiro plano e matar a actual. Quando à alteração do captions de botões e afins há outras formas de o fazer, depende da finalidade da coisa. Por exemplo, usando um editor Hexadecimal sobre o binário é possível fazer essas alterações, se bem que é desaconselhável. 10 REM Generation 48K! 20 INPUT "URL:", A$ 30 IF A$(1 TO 4) = "HTTP" THEN PRINT "400 Bad Request": GOTO 50 40 PRINT "404 Not Found" 50 PRINT "./M6 @ Portugal a Programar."
elementsky Posted May 8, 2006 at 08:42 PM Report #26449 Posted May 8, 2006 at 08:42 PM aí á coisa de 4 ou 5 anos, quando o mIRC e os seus derivados SCRIPTS estavam muito na moda, era muito utilizado por esta comunidade um programa que dava para alterar tudo, de um programa, mas já não me lembro do nome O meu Blog:http://damnit.blogs.sapo.pt
M6 Posted May 9, 2006 at 08:21 AM Report #26527 Posted May 9, 2006 at 08:21 AM aí á coisa de 4 ou 5 anos, quando o mIRC e os seus derivados SCRIPTS estavam muito na moda, era muito utilizado por esta comunidade um programa que dava para alterar tudo, de um programa, mas já não me lembro do nome Os "Resource Editors" da Borland e da MS têm também essas funcionalidades. 10 REM Generation 48K! 20 INPUT "URL:", A$ 30 IF A$(1 TO 4) = "HTTP" THEN PRINT "400 Bad Request": GOTO 50 40 PRINT "404 Not Found" 50 PRINT "./M6 @ Portugal a Programar."
TheDark Posted May 10, 2006 at 09:55 PM Report #26800 Posted May 10, 2006 at 09:55 PM "Nos meus tempos" de programação de scripts do mirc, fiz um DLL que, entre outras coisas, mudava o ícone da janela principal do mirc através das funções descritas pelo knightcoder. Infelizmente já não tenho o código... Alterar os ícones por este método não é ilegal. Já alterar no proprio programa, através de editores hexadecimais ou resource hackers, já roça os limites de reverse engineering, logo se tornando ilegal. Desaparecido.
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now