Pergunta

Eu tenho um aplicativo cliente .NET que intermitentemente perde a conexão a um compartilhamento UNC onde o usuário é ou em um domínio ou tem uma conta local com as mesmas credenciais no servidor. Ambos SO e Google têm abundância de exemplos usando LogonUser e WNetAddConnection via P-Invoke, mas ambos exigem a senha do usuário. Todos nosso aplicativo precisa fazer é abrir explicitamente uma conexão para um UNC, copiar um arquivo, e explicitamente fechar a conexão sem fornecer credenciais - em outras palavras, usando as credenciais atuais. Alguém pode me apontar na direção certa sobre como fazer isso em C #?

Foi útil?

Solução

De acordo com a documentação do WNetAddConnection2 função, você pode passar nulo para o nome de usuário para usar o contexto de usuário do processo atual. Eu assumo isso significa que ele vai usar o contexto da conta que executa o aplicativo cliente de segurança. MSDN também diz que passar nulo para a senha para usar a senha associada a qualquer nome de usuário é especificado.

Talvez deixar ambos para Null será apenas magicamente trabalho.

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