Não é possível mapear a letra da unidade para a pasta redirecionada ao usar o Microsoft Remote Desktop

5

Estou tendo alguma dificuldade em obter o recurso Redirecionamento de Pastas do Microsoft Remote Desktop para trabalhar com aplicativos de linha de comando.

  • A máquina do servidor está executando o Windows 2008R2.
  • A máquina cliente é o OS X Yosemite, executando o Microsoft Remote Desktop Versão 8.0.12 (Build 25282)

Eu configurei uma pasta para redirecionamento no cliente OS X RDP, com o campo 'name' como 'andrew' e o campo 'path' como / Users / andrew. Isso funciona corretamente. Quando me conecto ao servidor, vejo a pasta redirecionada em 'Computador' e posso navegar nela graficamente. No prompt de comando, NET USE também mostra:

C:\Users\Administrator>net use
New connections will not be remembered.


Status       Local     Remote                    Network

-------------------------------------------------------------------------------
                       \TSCLIENT\andrew         Microsoft Terminal Services
The command completed successfully.

No entanto, não há letra de unidade associada à pasta. Isso é um bloqueador para mim. O objetivo desse redirecionamento é permitir que eu use utilitários de compilação de linha de comando na máquina Windows, mas edite e manipule código-fonte no Mac. O shell cmd.exe não pode manipular caminhos UNC, e o powershell não é uma opção, pois os utilitários de compilação inevitavelmente fazem o shell para cmd para executar tarefas como executar vcvars, etc., que falharão se o CWD for um caminho UNC. Então, infelizmente, eu realmente preciso de uma letra de unidade mapeada ou isso é um não-go.

Se eu tentar usar o NET USE ou a "unidade de rede do mapa" gráfica para estabelecer uma letra de unidade, parece funcionar:

C:\Users\Administrator>net use Y: \TSCLIENT\andrew
The command completed successfully.

E re-running NET USE mostra a unidade como presente:

C: \ Users \ Administrator > net use Novas conexões não serão lembradas.

Status       Local     Remote                    Network

-------------------------------------------------------------------------------
             Y:        \TSCLIENT\andrew         Microsoft Terminal Services
                       \TSCLIENT\andrew         Microsoft Terminal Services
The command completed successfully.

No entanto, se eu tentar realmente acessar a unidade Y, isso não funcionará:

C:\Users\Administrator>y:
The device is not connected.

Posteriormente, se eu tentar acessar a pasta redirecionada que está funcionando originalmente a partir do shell gráfico, descubro que ela não está mais funcionando corretamente também. Eu agora recebo um diálogo dizendo

\tsclient\andrew is not accessible. You might not have permissions to use this network resource.
Contact the administrator of this server to find out if you have access permissions.

Attempt to access invalid address.

Parece que eu sou não é a única pessoa que encontrou essa dificuldade , mas a" resposta "lá é singularmente inútil, assim como a documentação à qual se vincula.

Sem uma letra de unidade, o redirecionamento de pasta não é utilizável para minhas necessidades, mas seria extremamente útil se houvesse uma maneira de fazer isso funcionar.

Alguma ideia? Isso me tiraria da necessidade de rsync minhas fontes durante o teste no Windows, o que seria um enorme ganho de produtividade.

    
por acm 06.01.2015 / 17:24

2 respostas

6

Use um link simbólico em vez de uma letra de unidade, coloque o seguinte em um .BAT no logon do servidor TS:

MKLINK /D C:\Andrew \tsclient\Andrew

Esse link simbólico será persistente nas reinicializações e removerá o requisito de uma letra de unidade.

    
por 15.01.2015 / 09:49
0

Inicie uma nova sessão RDP (depois de sair da sessão atual). Em seguida, crie o arquivo em lote que contém essas linhas:

net use \tsclient\andrew /delete /persistent:yes
net use \tsclient\andrew /delete
net use y: \tsclient\andrew

Execute esse arquivo em lotes.

    
por 12.01.2015 / 07:59