Dê o caminho para a chave USB inserida em um script

2

Eu gostaria de executar um determinado script Perl sempre que eu conecto minha câmera ao meu PC, para que este script faça o download de todas as fotos nele. Mas como a letra da unidade da câmera pode mudar dependendo do que já está conectado, eu preciso passar essa letra de unidade como um argumento para o script.

Isso é possível?

    
por Xavier Nodet 31.07.2009 / 09:28

2 respostas

1

Como escrevi em sua outra pergunta para este problema também USBDLM poderia ser a solução. Por exemplo. Você pode iniciar sua ferramenta de sincronização de foto ao conectar ou qualquer script que desejar.

Você pode usar a variável % DriveLetter% a ser passada para seu script. Aqui está uma seção de configuração de exemplo:

[OnArrival1]
open=your_script.bat %DriveLetter%

Consulte a documentação para obter detalhes (a documentação do Windows incluída é muito mais legível).

    
por 31.07.2009 / 10:32
2

Você poderia:

  1. Atribua uma letra de unidade diferente, então ela permanecerá a mesma. Isso pode ser feito em devmgmt.msc

  2. Em vez de uma letra de unidade, atribua um caminho do sistema de arquivos (como no Linux).

    Por exemplo, "C:\Users\Xavier\Desktop\USB key\" em vez de "E:\" . Novamente, devmgmt.msc

  3. Execute mountvol , copie o caminho \?\Volume{blah-blah} , substitua o ? pelo período . e use o caminho .

    Por exemplo, \?\Volume{e095d6a2-a763-11dd-afc0-806d6172696f}\boot.ini no meu computador é igual a C:\boot.ini . (Não tenho certeza se isso permanece estático o tempo todo - mas funcionou para mim até agora.)

por 31.07.2009 / 10:39