Execute como uma tarefa agendada. Você pode programar a senha para que ela não faça parte de um script e você pode executá-la no logon / logoff.
Eu tenho um script que é executado por algum aplicativo. O script adiciona uma impressora compartilhada à porta lpt1 e, em seguida, envia um arquivo para ela para que seja impresso e, em seguida, remove a impressora da porta:
Tudo funciona bem até que seja instalado em um computador com o sistema Windows 8.1 recente:
Amensagememinglêssignifica:Asenhapara[nomedaimpressoracompartilhada]estáincorreta,digiteonomedousuáriopara[nomedocomputador]
Funcionabemquandooexecutomanualmentecomoadministrador,masinfelizmentenãosereicapazdefazê-lo.Eugostariaquefosseexecutadoemumscriptporumprogramaqueéusadoporumusuáriopadrão.
Quandopesquisei"windows 8 + net use", descobri que as pessoas estão tendo vários problemas com ele, mas infelizmente não há nenhuma resposta para o meu problema.
Obrigado por qualquer ajuda!
EDIT: O que eu preciso seria:
uma sintaxe para um comando, algo como abaixo, que faria o trabalho:
net use lpt1: \ hostname \ nome da impressora -user: admin -password: xyz123
uma maneira de alterar a configuração do computador para que ele não peça senhas.
EDIT 2: Depois de algumas experiências, acredito que agora não é problema específico do Windows 8, foi apenas uma coincidência. Fiz testes em outro computador com o Windows 8 e não havia esse problema. Não me pediu nenhuma senha lá e, felizmente, executou o comando.
Tentei algumas soluções sugeridas aqui, verifiquei o compartilhamento protegido por senha (estava desativado), tentei executá-lo como algum usuário (não ajuda, nenhum usuário e senha existentes não funcionarão)
Ainda funciona se eu clicar com o botão direito do mouse no ícone CMD e selecionar "Executar como administrador". Estranho
Então eu achei esse link, parece muito parecido com o meu problema link
Vou tentar sugestões a partir daí - desabilitando o lpt no gerenciador de dispositivos, tentando todas as portas lpt possíveis, dando direitos a algumas pastas, etc.
Eu tenho uma pergunta agora - sou novo no SuperUser, o que devo fazer com a recompensa agora?
Execute como uma tarefa agendada. Você pode programar a senha para que ela não faça parte de um script e você pode executá-la no logon / logoff.
Use a opção NET USE '/ savecred' na primeira vez que você se conectar à impressora manualmente.
Depois, esta opção armazenará a senha e as informações do usuário para uso na próxima vez que você se conectar usando a opção '/ persistent: yes'
Desde o Windows 7, a Microsoft agora exige a especificação da senha para usar um compartilhamento. Isso não foi necessário no XP.
A sintaxe completa do comando net use é:
net use lpt1: \servername\printer /user:username password
Você pode adicionar ao comando o nome de usuário e a senha de um administrador no MAGAZYN.
Você também pode tentar desativar o compartilhamento protegido por senha no servidor.
Se você não quiser colocar uma senha em texto puro em um script, talvez a resposta seja de @BryanC pode ajudá-lo a especificá-lo apenas uma vez.