Winoldap no Ctrl Alt Del, alguém sabe como tirar?
Galera,
em determinado momento meu software faz isso:
[color=red:e725a67216]
varUnidade := X:;
Winexec(PChar(´Net use´ + varUnidade + ´ /delete´),WM_HIDE);
[/color:e725a67216]
Neste momento o SO, Win98 apenas, acrescenta um programinha no Ctrl+Alt+Del chamado [b:e725a67216][color=red:e725a67216]Winoldap[/color:e725a67216][/b:e725a67216], como meu aplicativo é iniciado várias vezes durante o dia, imagina...vaaaarias instancias do Aplicativo.
Descobri que só acontece isso quando o sistema chama alguma rotina DOS de dentro do aplicativo, e só no Win98.
Tem como fazer com que iso não aconteca?
Alguém conhece este problema?
Valeu
[color=blue:e725a67216]Obs. Não posso usar as APIS do SO para mapear as unidades, pois encontrei alguns problemas no passado.[/color:e725a67216]
em determinado momento meu software faz isso:
[color=red:e725a67216]
varUnidade := X:;
Winexec(PChar(´Net use´ + varUnidade + ´ /delete´),WM_HIDE);
[/color:e725a67216]
Neste momento o SO, Win98 apenas, acrescenta um programinha no Ctrl+Alt+Del chamado [b:e725a67216][color=red:e725a67216]Winoldap[/color:e725a67216][/b:e725a67216], como meu aplicativo é iniciado várias vezes durante o dia, imagina...vaaaarias instancias do Aplicativo.
Descobri que só acontece isso quando o sistema chama alguma rotina DOS de dentro do aplicativo, e só no Win98.
Tem como fazer com que iso não aconteca?
Alguém conhece este problema?
Valeu
[color=blue:e725a67216]Obs. Não posso usar as APIS do SO para mapear as unidades, pois encontrei alguns problemas no passado.[/color:e725a67216]
Adriano Santos
Curtidas 0
Respostas
Nildo
10/02/2004
WinOldAp aparece normalmente quando dá pau em alguma aplicação DOS sendo executado no WIN98.
Esta é uma rotina que eu uso para desconectar uma unidade de rede:
E essa para conectar uma unidade de rede:
Esta é uma rotina que eu uso para desconectar uma unidade de rede:
var Result: string; begin WNetCancelConnection2(PChar(edLetra.Text+´:´),0,true); Case GetLastError() of 1205: Result := ´Não foi possível abrir o perfil´; 1206: Result := ´Perfil do usuário não encontrado ou inválido´; 1208: Result := ´Ocorreu um Erro específico na rede´; 2138: Result := ´Rede não encontrada ou fora do ar´; 2250: Result := ´Mapeamento inválido ou não encontrado´; 2401: Result := ´Existem muitos arquivos abertos´; else Result := ´Unidade desconectada com sucesso´; end; ShowMessage(Result); end;
E essa para conectar uma unidade de rede:
var err : DWord; PServer, PSenha, PLetra : PChar; i: Integer; Begin PServer := PChar(edCaminho.text + #0); PLetra := PChar(edLetra.text+´:´); PSenha := PChar(edSenha.Text); ERR := WNetAddConnection ( PServer , PSenha , PLetra ); CASE ERR of ERROR_ACCESS_DENIED : ShowMessage ( ´Acesso negado.´ ); ERROR_ALREADY_ASSIGNED : ShowMessage ( ´A letra do drive especificada já está conectada.´ ); ERROR_BAD_DEV_TYPE : ShowMessage ( ´O tipo de dispositivo e o tipo de recurso não são compatíveis.´ ); ERROR_BAD_DEVICE : ShowMessage ( ´Letra inválida.´ ); ERROR_BAD_NET_NAME : ShowMessage ( ´Nome do servidor não é válido ou não pode ser localizado.´ ); ERROR_BAD_PROFILE : ShowMessage ( ´Formato incorreto de parâmetros.´ ); ERROR_CANNOT_OPEN_PROFILE : ShowMessage ( ´Conexão permanente não disponível.´ ); ERROR_DEVICE_ALREADY_REMEMBERED : ShowMessage ( ´Uma entrada para o dispositivo especificado já está no perfil do usuário.´ ); ERROR_EXTENDED_ERROR : ShowMessage ( ´Erro de rede.´ ); ERROR_INVALID_PASSWORD : ShowMessage ( ´Senha especificada inválida.´ ); ERROR_NO_NET_OR_BAD_PATH : ShowMessage ( ´A operação não foi concluída porque a rede não foi inicializada ou caminho é inválido.´ ); ERROR_NO_NETWORK : ShowMessage ( ´A rede não está presente.´ ); NO_ERROR : ShowMessage(´Mapeamento efetuado com sucesso´); end; end;
GOSTEI 0
Adriano Santos
10/02/2004
valeu, vou dar uma olhada.
GOSTEI 0