Tá ai a função!

Function CriaDriveMapeado(Drive, Caminho, usuario, Senha : string):boolean;
var
err : DWord;
PServer, PSenha, PLetra, Pusuario : PChar;
NRW: TNetResource;
Begin
PServer  := pchar(Caminho + #0);
PLetra   := pchar(Drive);
PSenha   := pchar(senha);
Pusuario := pchar(usuario);

Result := false;

if usuario = '' then
  ERR := WNetAddConnection ( PServer , PSenha , PLetra )
else
  begin

    with NRW do
      begin
        dwType := RESOURCETYPE_ANY;
        lpLocalName  := PLetra;
        lpRemoteName := pchar(Caminho);
        lpProvider   := '';
      end;

    err := WNetAddConnection2(NRW, Psenha, Pusuario, CONNECT_UPDATE_PROFILE);

  end;

CASE ERR of
ERROR_ACCESS_DENIED : begin
                       ShowMessage ( 'Mapeamento de Pasta - Acesso negado.' );
                       Result := false;
                      end;
//ERROR_ALREADY_ASSIGNED : ShowMessage ( 'Mapeamento de Pasta - A letra do 
drive especificada já está conectada.' );
ERROR_BAD_DEV_TYPE : begin
                      ShowMessage ( 'Mapeamento de Pasta - O tipo de 
dispositivo e o tipo de recurso não são compatíveis.' );
                      Result := false;
                     end;
ERROR_BAD_DEVICE : begin
                       ShowMessage ( 'Mapeamento de Pasta - Letra inválida.' );
                       Result := false;
                   end;
ERROR_BAD_NET_NAME : begin
                       ShowMessage ( 'Mapeamento de Pasta - Nome do servidor 
não é válido ou não pode ser localizado.' );
                       Result := false;
                     end;
ERROR_BAD_PROFILE : begin
                       ShowMessage ( 'Mapeamento de Pasta - Formato incorreto 
de parâmetros.' );
                       Result := false;
                    end;
ERROR_CANNOT_OPEN_PROFILE : begin
                               ShowMessage ( 'Mapeamento de Pasta - Conexão 
permanente não disponível.' );
                               Result := false;
                            end;
ERROR_DEVICE_ALREADY_REMEMBERED : Begin
                                    ShowMessage ( 'Mapeamento de Pasta - Uma 
entrada para o dispositivo especificado já está no perfil do usuário.' );
                                   Result := false;
                                  end;
ERROR_EXTENDED_ERROR : begin
                         ShowMessage ( 'Mapeamento de Pasta - Erro de rede.' );
                         Result := false;
                       end;
ERROR_INVALID_PASSWORD : begin
                           ShowMessage ( 'Mapeamento de Pasta - Senha 
especificada inválida.' );
                           Result := false;
                         end;
ERROR_NO_NET_OR_BAD_PATH : begin
                             ShowMessage ( 'Mapeamento de Pasta - A operação 
não foi concluída porque a rede não foi inicializada ou caminho é inválido.' );
                             Result := false;
                           end;
ERROR_NO_NETWORK : Begin
                     ShowMessage ( 'Mapeamento de Pasta - A rede não está 
presente.' );
                     Result := false;
                   end;
NO_ERROR         : Result := true;
end;

end;

  ----- Original Message ----- 
  From: Emerson Moreno 
  To: delphi-br@yahoogrupos.com.br 
  Sent: Friday, June 10, 2005 1:18 PM
  Subject: [delphi-br] Mapear Unidade de rede


  Olá amigos, será que alguem poderia me dizer uma função ou procedures
  que mapeasse uma unidade de rede com uma letra a partir da escolha do
  usuario????

  Muito obrigado
  -- 
  []'s

  Emerson Moreno


  -- 
  <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>

  Para ver as mensagens antigas, acesse:
  http://br.groups.yahoo.com/group/delphi-br/messages

  Para falar com o moderador, envie um e-mail para:
  [EMAIL PROTECTED] ou [EMAIL PROTECTED]




------------------------------------------------------------------------------
  Links do Yahoo! Grupos

    a.. Para visitar o site do seu grupo na web, acesse:
    http://br.groups.yahoo.com/group/delphi-br/
      
    b.. Para sair deste grupo, envie um e-mail para:
    [EMAIL PROTECTED]
      
    c.. O uso que você faz do Yahoo! Grupos está sujeito aos Termos do Serviço 
do Yahoo!. 




------------------------------------------------------------------------------


  No virus found in this incoming message.
  Checked by AVG Anti-Virus.
  Version: 7.0.323 / Virus Database: 267.6.6 - Release Date: 08/06/2005


[As partes desta mensagem que não continham texto foram removidas]



-- 
<<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>

Para ver as mensagens antigas, acesse:
 http://br.groups.yahoo.com/group/delphi-br/messages

Para falar com o moderador, envie um e-mail para:
 [EMAIL PROTECTED] ou [EMAIL PROTECTED]
 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
    http://br.groups.yahoo.com/group/delphi-br/

<*> Para sair deste grupo, envie um e-mail para:
    [EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
    http://br.yahoo.com/info/utos.html

 


Responder a