1

パスを作成し、PC からリムーバブル ドライブにデータをコピーできるように、リムーバブル ドライブ文字を取得するにはどうすればよいですか?

現在、私は使用しています

_getcwd(buff,b_SIZE);
MessageBox(buff);
strncpy(Root,buff,3);

ソフトウェアを USB から直接実行しても問題はありません。D: または E: のいずれかが返されます。しかし、私の問題は、もちろんCドライブにインストールされたPCのプログラムであるPCからUSBプログラムを実行する必要があるため、これにより_getcwdC:\ドライブ文字が得られることです。そのため、代わりに現在のリムーバブル ドライブ文字を確認する方法がないか探しています。

これは私の質問に最も近いものです:リムーバブル ドライブの検出 (例: USB フラッシュ ドライブ) C/C++

4

1 に答える 1

2

GetLogicalDrives()は、現在利用可能なすべてのドライブを提供します。指定されたビットベクトル (ビット 0 はドライブ A:、ビット 1 はドライブ B: など) をループし、使用可能なドライブごとに、GetDriveType()が を返すかどうかを確認しますDRIVE_REMOVABLE

または、GetLogicalDrives() をスキップして、アルファベットの 26 文字すべてをループして を探しDRIVE_REMOVABLEます。

于 2015-05-25T09:28:54.950 に答える