Pergunta

Eu tenho uma alça em uma janela e seu controle de richedit. Eu seria capaz de substituir o referido controle por um dos meus? Eu gostaria que se comportasse como o original, ou seja, fazer parte da janela e assim como.

Atualmente, vou elaborar o cenário - atualmente estou desmontando um aplicativo de cujos recursos é um editor de texto. Meu ambiente atual (restrito) possui vários ganchos aos procedimentos, um dos quais produz a alça à janela do editor. Outro me permite adquirir a alça para o richedit20a controla os hosts da janela.

O que eu gostaria de fazer é isso - substitua o controle com o meu (seu equivalente .NET, presumivelmente) e corrigente as chamadas GetWindowText do aplicativo para usar a nova. Para implementá -lo, pretendo escrever a biblioteca de classes em C#/gerenciado C ++ e importá -lo para o meu aplicativo (que está escrito em C ++ não gerenciado).

Além disso, pode haver um número arbitrário de instâncias do editor de texto.

Foi útil?

Solução

Isso parece muito complexo. Basta substituir seu wndproc (GWL_WNDPROC), encaminhando nada e invalide o HWND. Que forçará um redesenho (WM_PAINT) que você pode capturar. O proprietário provavelmente nem notaria (a menos que eles tenham fisgado também, é claro)

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top