Ir para conteúdo

POWERED BY:

Arquivado

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

Zé Roberto

[Resolvido] Ativar efeito do Windows XP

Recommended Posts

Eu queria fazer um simples programa que rode em background que ative o recurso de mostrar conteúdo da janela ao arrastar a cada minuto.

 

Na verdade eu não sei C, mas sei várias outras linguagens de programação, e sei a sintaxe. Mas como o que eu quero fazer é muito simples e tem muitos tutorias na internet não vai ser um problema tão grando.

O que eu não sei, é o que eu usaria para alterar esta configuração específica... Isto não é uma coisa muito comum, por isso achar com o google fica um pouco mais difícil :P

 

Eu quero fazer isso porque eu uso claro 3g, e o discador da claro desativa isto toda vez que abro ele, e não tem como conectar sem ele estar aberto porque ele que faz o modem se conectar a rede para então se conectar a internet por hsdpa...

 

Isso parece bobo, mas com o tempo isso fica extremamente irritante, ainda mais que eu trabalho muito com imagens e com muitas janelas abertas...

 

 

 

Se alguém puder me dar uma luz eu agradeço muito :D

Compartilhar este post


Link para o post
Compartilhar em outros sites

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

 

Graças a este código em Visual Basic que achei :D

 

Todas estas variáveis no enum enSystemParametersInfo parecem já estar definidas, e na linha 230 faz exatamente o que eu queria.

 

A função SystemParametersInfo também já estava pronta para uso no ambiente, acho que foi incluído pelo windows.h, só não sei se o "Or" é lógico ou binário. Como "&" "soma" as strings, os operadores bitwise devem estar literais ^^, então usei o OU binário, e está funcionando :D

 

Se interessar a alguém segue o código:

#define _WIN32_WINNT 0x0500
#include <windows.h>

#define INTERVAL 60

void hide()
{
     HWND hWnd = GetConsoleWindow();
     ShowWindow( hWnd, SW_HIDE );
     return;
}


int TIMES = 0;
int STOP = 0;

void action()
{
    if(STOP == 1)
    {
            printf("Parando...\n");
            return;
    }
    
    TIMES++;
    /*if(TIMES >= 10)
    {
             STOP = 1;
             action();
             return;
    }*/
    
    //printf("Chamado %d\n", TIMES);
    int result = SystemParametersInfo(SPI_SETDRAGFULLWINDOWS, 1, NULL, SPIF_UPDATEINIFILE | SPIF_SENDWININICHANGE);
    if(result != 1)
    {
        printf("Ocorreu um erro! %d \n", result);
    }
    else
    {
        //printf("OK\n");
    }
    
    sleep(INTERVAL * 1000);
    action();
}

int main(int argc, char *argv[])
{
    hide();
    action();
    return 0;
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

=D

 

ainda bem que ja conseguiste!

Marcarei como "Resolvido".

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.