2012-02-14 81 views
0

在Windows 7下,我爲USB設備創建了自定義自動啓動條目。此條目在我的硬盤上啓動批處理文件,而不是在USB驅動器上。我的硬盤總是有相同的盤符。我該如何告訴批處理文件,哪個驅動器號被分配給USB設備,或者我怎樣才能在批處理文件中得到它?如何確定Windows中自動啓動中的當前驅動器號?

我發現這不是%〜D0

回答

1

我很驚訝%〜 d0不起作用,但你的批處理文件運行。

如果你可以指定一個唯一的卷標您的USB設備,那麼你可以嘗試以下方法:

閱讀評論後
for /f %%D in ('wmic volume get driveLetter^, label ^| find "yourLabel"') do set drive=%%D 

編輯 - OK,%〜D0不應該,因爲它的工作將簡單地給你的bat文件所在的盤符 - 你的硬盤。

我仍然認爲WMIC是您需要的工具。如果你正在尋找一個特定的設備,那麼我認爲我的原始答案可能會起作用。另一種可能是在wmic命令中用serialNumber替換標籤。插入設備,確定哪個驅動器號是手動的,然後從命令行鍵入wmic volume get driveLetter, serialNumber以確定要查找的序列號。然後你可以在你的批處理文件中使用以下內容

for /f %%D in ('wmic volume get driveLetter^, serialNumber ^| find "yourSerialNumber"') do set drive=%%D 

另一種可能是將你的批處理文件放在usb設備上。如果您可以自動啓動從設備啓動批處理文件,那麼您可以使用使用%~d0獲取分配的驅動器號。

+0

我看到了這種誤解:批處理文件位於我的硬盤上,而不是usb驅動器上。我的硬盤總是有相同的名稱。 – Zurechtweiser 2012-02-14 14:06:07

+0

@RichartBremer - 我已經更新了答案,看看這是否有幫助。 – dbenham 2012-02-14 15:44:35

0
cd /d %~dp0\ 

它等於CD/DD:\ currentpath \

%0批處理文件路徑

+0

我看到了這種誤解:批處理文件在我的硬盤上,而不是在USB驅動器上。我的硬盤總是有相同的名稱。 – Zurechtweiser 2012-02-14 14:07:16

相關問題