Jump to content

Recommended Posts

Posted

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!

Posted

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  😄

Posted

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."

 

Posted

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."

 

Posted

"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.

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.