Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

ThAuA

[Resolvido] Pegar título de todas janelas abertas

Recommended Posts

Olá pessoal, estou fazendo uma dll em um aplicativo meu e preciso juntar o título de todas janelas abertas para verificar se tem certos 'programas' abertos.

 

Porém não estou conseguindo juntar todos, queria algo do tipo, você está com 2 janelas abertas:

 

Imaster Fóruns -> Postando novo tópico - Mozila Firefox

Novo documento de texto - Bloco de Notas

 

Queria juntar tudo numa string só:

Imaster Fóruns -> Postando novo tópico - Mozila Firefox Novo documento de texto - Bloco de Notas

 

Ou numa array, tanto faz, algo que desse pra mim verificar se tem alguma string nela, por exemplo, faria uma busca por 'firefox' na tal string ou array, e verificaria se tem algo aberto com 'firefox' no nome.

 

 

Alguém aí sabe como fazer isso??

 

Abraço.

Compartilhar este post


Link para o post
Compartilhar em outros sites

"Para obter a resposta certa, é preciso fazer a PERGUNTA certa" -- Albert Einstein

 

Queria juntar tudo numa string só:

Então expresse-se melhor da próxima, pq eu não tenhno bola de cristal..

A pergunta que você fez é referente à concatenação de strings. :P

 

O que você quer é usar a API do windows.

Uma rápida busca no google e obtive o seguinte:

http://msdn.microsoft.com/en-us/library/ms633520(VS.85).aspx

http://msdn.microsoft.com/en-us/library/ms633499(VS.85).aspx

 

Se você continuar fuçando por lá, com certeza encontra mais detalhes.

Qualquer coisa, só postar!

http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá pessoal, estou fazendo uma dll em um aplicativo meu e preciso juntar o título de todas janelas abertas para verificar se tem certos 'programas' abertos.

Se eu entendi bem, acho que você quer os títulos apenas pra tentar comparar os nomes e verificar se tem algum processo conhecido rodando, certo?

 

Por que não pegar diretamente a lista de processos?

 

http://msdn.microsoft.com/en-us/library/ms684865(VS.85).aspx

Procura lá a função: EnumProcess

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá pessoal, estou fazendo uma dll em um aplicativo meu e preciso juntar o título de todas janelas abertas para verificar se tem certos 'programas' abertos.

 

Porém não estou conseguindo juntar todos, queria algo do tipo, você está com 2 janelas abertas:

 

Imaster Fóruns -> Postando novo tópico - Mozila Firefox

Novo documento de texto - Bloco de Notas

 

Queria juntar tudo numa string só:

Imaster Fóruns -> Postando novo tópico - Mozila Firefox Novo documento de texto - Bloco de Notas

 

Ou numa array, tanto faz, algo que desse pra mim verificar se tem alguma string nela, por exemplo, faria uma busca por 'firefox' na tal string ou array, e verificaria se tem algo aberto com 'firefox' no nome.

 

 

Alguém aí sabe como fazer isso??

 

Abraço.

Acho que é aproximadamente isso que você está procurando, dei uma olhada em meus exemplos...

 

#include <stdio.h>
#include <windows.h>

BOOL CALLBACK EnumWindowsProc(HWND hWnd, LPARAM lParam) 
{
	DWORD dwThreadId, dwProcessId;
	HINSTANCE hInstance;
	char String[255];
	HANDLE hProcess;
	if (!hWnd)
		return TRUE;		// Not a window
	if (!::IsWindowVisible(hWnd))
		return TRUE;		// Not visible
	if (!SendMessage(hWnd, WM_GETTEXT, sizeof(String), (LPARAM)String))
		return TRUE;		// No window title
	hInstance = (HINSTANCE)GetWindowLong(hWnd, GWL_HINSTANCE);
	dwThreadId = GetWindowThreadProcessId(hWnd, &dwProcessId);
	hProcess = OpenProcess(PROCESS_ALL_ACCESS, FALSE, dwProcessId);
	printf("%s\n", String);

	CloseHandle(hProcess);
	return TRUE;
}

int main(int argc, char* argv[])
{
	EnumWindows(EnumWindowsProc, NULL);
}

Abraço

Compartilhar este post


Link para o post
Compartilhar em outros sites

Esqueçe, eu rodei ela no Visual C++ 6.0 e compilo legal

 

eu tava tentando no Visual Studio 2008...

 

Se você tiver um exemplo usando o VS 2008 posta ae, thx

Compartilhar este post


Link para o post
Compartilhar em outros sites

Esqueçe, eu rodei ela no Visual C++ 6.0 e compilo legal

 

eu tava tentando no Visual Studio 2008...

 

Se você tiver um exemplo usando o VS 2008 posta ae, thx

Não deveria ter problema para compilar no VS 2008.

 

Poste os erros...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Essas funções já foram definidas no .NET framework , e o Visual C++ 6.0 não utiliza eles , então por isso que da pra compilar

 

No Visual Studio 2008 C++ usando o Windows Forms e o .NET Framework ele não da, mas usando o win32 sim..

Compartilhar este post


Link para o post
Compartilhar em outros sites

"Para obter a resposta certa, é preciso fazer a PERGUNTA certa" -- Albert Einstein

 

Queria juntar tudo numa string só:

Então expresse-se melhor da próxima, pq eu não tenhno bola de cristal..

A pergunta que você fez é referente à concatenação de strings. :P

 

 

Não amigo, você que não leu com atenção todo meu tópico ^^'

 

Vou testar os códigos que passaram aí, vlw.

 

Abraço.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá pessoal, estou fazendo uma dll em um aplicativo meu e preciso juntar o título de todas janelas abertas para verificar se tem certos 'programas' abertos.

 

Porém não estou conseguindo juntar todos, queria algo do tipo, você está com 2 janelas abertas:

 

Imaster Fóruns -> Postando novo tópico - Mozila Firefox

Novo documento de texto - Bloco de Notas

 

Queria juntar tudo numa string só:

Imaster Fóruns -> Postando novo tópico - Mozila Firefox Novo documento de texto - Bloco de Notas

 

Ou numa array, tanto faz, algo que desse pra mim verificar se tem alguma string nela, por exemplo, faria uma busca por 'firefox' na tal string ou array, e verificaria se tem algo aberto com 'firefox' no nome.

 

 

Alguém aí sabe como fazer isso??

 

Abraço.

 

Voce deve ta achando que tem burro aqui , voce que escreve errado e vem falando que nós que lemos errado.

 

Porém não estou conseguindo juntar todos

 

Não conseguir juntar é DIFERENTE de Não consigo pegar os nomes

 

 

Tem 3 passarinhos voando eu falo que não consigo juntar eles , ai voce fala é so por eles na mesma gaiola , eu respondo

 

não voce não sabe ler o que eu falei , eu não disse que não consigo juntar , eu disse que não consigo pegar eles.

 

-.-'

Compartilhar este post


Link para o post
Compartilhar em outros sites

 

Olá pessoal, estou fazendo uma dll em um aplicativo meu e preciso juntar o título de todas janelas abertas para verificar se tem certos 'programas' abertos.

 

Porém não estou conseguindo juntar todos, queria algo do tipo, você está com 2 janelas abertas:

 

Imaster Fóruns -> Postando novo tópico - Mozila Firefox

Novo documento de texto - Bloco de Notas

 

Queria juntar tudo numa string só:

Imaster Fóruns -> Postando novo tópico - Mozila Firefox Novo documento de texto - Bloco de Notas

 

Ou numa array, tanto faz, algo que desse pra mim verificar se tem alguma string nela, por exemplo, faria uma busca por 'firefox' na tal string ou array, e verificaria se tem algo aberto com 'firefox' no nome.

 

 

Alguém aí sabe como fazer isso??

 

Abraço.

 

Voce deve ta achando que tem burro aqui , voce que escreve errado e vem falando que nós que lemos errado.

 

Porém não estou conseguindo juntar todos

 

Não conseguir juntar é DIFERENTE de Não consigo pegar os nomes

 

 

Tem 3 passarinhos voando eu falo que não consigo juntar eles , ai voce fala é so por eles na mesma gaiola , eu respondo

 

não voce não sabe ler o que eu falei , eu não disse que não consigo juntar , eu disse que não consigo pegar eles.

 

-.-'

 

 

Tá certo amigo, na próxima vez eu desenho.

 

Obs: Já consegui, com o código do Programmer... vlw ae...

 

Abraço

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.