ドライブの割当て(C言語)

説明:

下記サンプルのMapPhysicalDrive関数は、プライマリハードディスクの二番目のパーティションを、ドライブ'S:'に割り当て、その後30秒間待機する。待機中にエクスプローラなどを利用することにより、ドライブ'S:'が割り当てられていることを確認できる。待機時間が過ぎたら、ドライブS:の割当てを解除し、再び元の状態へ戻す。

同様に、下記サンプルのMapPath関数は、'c:\test'というディレクトリを、ドライブ'S:'に割り当てる。

キーワード:

DefineDosDevice

サンプルコード:

void MapPhysicalDrive()
{
	/* プライマリハードディスクの二番目のパーティションを、ドライブ'S:'に割り当てる */
	DefineDosDevice(
		DDD_RAW_TARGET_PATH,
		"s:", 
		"\\Device\\Harddisk0\\Partition2");

	/* 30秒間待機 */
	printf("待機...\n");
	Sleep(30000);

	/* ドライブ'S:'を削除する */
	DefineDosDevice(
		DDD_REMOVE_DEFINITION, 
		"s:", 
		NULL);
}

void MapPath()
{
	/* 'c:\test'というディレクトリを'S:'というドライブにマップする */
	DefineDosDevice(
		0,
		"s:", 
		"c:\\test");

	/* 30秒間待機 */
	printf("待機...\n");
	Sleep(30000);

	/* ドライブ'S:'を削除する */
	DefineDosDevice(
		DDD_REMOVE_DEFINITION, 
		"s:", 
		NULL);
}

(original text:1999/02/10 更新)

本ドキュメントの内容は保証しません。本ドキュメントによって生じた結果について、一切の責任を負いません。