
私はタブレットの Surface Pro を持っており、永久的に挿入されているマイクロ SD カードを持っています。音楽やビデオなどのメディア ファイルを保存するために使用しています。
Windows は、これがリムーバブル ドライブであると認識し、ファイルをごみ箱に入れるのではなく、すぐに削除します。また、SkyDrive や Dropbox などのアプリケーションは、カードがリムーバブルであるため、カードとの同期を拒否します。
マイクロ SD カードを NTFS でフォーマットし、C: ドライブのフォルダーとしてマウントすると、SkyDrive と Dropbox がリムーバブル ドライブに同期できるようになることはわかっていますが、ファイルの削除には影響しません。
また、さまざまな USB ドライブは、リムーバブル ビットを反転することで、Windows によって非リムーバブル ドライブとして扱われるように変更できると聞いたことがあります。ただし、これはカード リーダー、少なくとも私の Surface のカード リーダーではオプションではないようです。
このドライブのごみ箱を有効にし、このドライブを一般にリムーバブルでないドライブとして扱う方法はありますか?
答え1
私は自分の問題を解決することができましたが、それは必ずしも最も簡単な解決策ではありません。簡単に言うと、Windows がリムーバブル ドライブとして認識する SD カードにファイルを保存する代わりに、代わりに SD カード全体を仮想ハード ドライブで埋め尽くし、それを Windows にマウントして実際のハード ドライブとして扱うことが可能です。
Windows 8.1 で実行したことは次のとおりです。
オプション: SD カードの内容を消去します。これは絶対に必要なわけではありませんが、SD カードの空き容量が新しいディスクの容量になります。
ディスクの管理を開きます (スタート メニューの検索では、「ハード ディスク パーティションの作成とフォーマット」として表示されます)。
オプション: SD カードが NTFS にフォーマットされていることを確認します。カードは永続的に使用されるため、クロスプラットフォームの互換性は重要ではないため、より新しいファイル システムを使用することをお勧めします。さらに、これにより、すぐ下の次のオプションの手順が有効になります。
オプション (SD カードを NTFS にフォーマットする場合のみ可能): SD カードのパーティションを選択し、「ドライブ文字とパスの変更」を選択します。ドライブ文字を削除し、空の NTFS フォルダーに新しいマウント ポイントを追加します。これをメイン ドライブのどこかに貼り付けることができます。私は「C:\Media Container」を選択しました。この方法では、SD カードは別のドライブとして表示されなくなりますが、仮想ドライブのシステムから引き続きアクセスできます。
上部の [アクション] メニューで、[VHD の作成] を選択します。SD カードの場所を参照します (マウント ポイントを上記のように変更した場合は [C:\Media Container])。ここで VHD を作成します... 私は [Media Store] と名付けました。また、電源障害イベントに対する耐性を高めるために仮想ハード ディスクの形式を VHDX に変更しましたが、Windows の説明以外にこれに関する実際の洞察はありません。将来、より大きな SD カードを入手したときに役立つかもしれないと考え、推奨されている動的拡張ディスク タイプのままにしました。
新しいディスク (左側、パーティション上) を右クリックして、初期化を選択します。私は GPT パーティション テーブルを選択しました。これは新しい設計で、おそらく優れていると思われますが、これについては他には何も知りません。初期化後、新しい未割り当てパーティションを右クリックして、「新しいシンプル ボリューム」を選択します。ウィザードに従って、すべての領域を新しいパーティションに割り当て、新しいハード ドライブで使用するドライブ文字 (おそらく D:) を割り当て、NTFS にフォーマットします。すべてがうまくいけば、Windows エクスプローラーで新しいハード ドライブが使用可能になっているはずです。
さて、これらすべてをまとめるコツは、コンピュータの起動時にドライブがマウントされるようにWindowsを設定することです。コンピュータがドライブをマウントし始めるたびにディスク管理に入るのは面倒です。これを行うには、マウント用のスクリプトを作成し、タスクスケジューラを使用して起動時にスクリプトを実行する必要があります。非常に優れたガイドを見つけました。ここ以下に要約します。
まず、好きな場所に好きな名前を付けてテキスト ファイルを作成します。これがスクリプトになります。私は「Mount Script.txt」という名前を付け、仮想ハード ドライブ ファイルとともに「C:\Media Container」に配置しました。それを開いて、以下の内容を貼り付けます。パスとドライブ文字は、自分の情報に合わせて編集します。
select vdisk file="C:\Media Container\Media Store.vhdx"
attach vdisk
assign letter=D
スタート メニューに「タスクのスケジュール」として表示される「コンピューターの管理」の下にあるタスク スケジューラを開きます。右側のペインで、「タスクの作成」を選択します。
重要なポイントは次のとおりです。
- [全般] タブで、タスクに何らかの名前を入力します。私は「SD カードのマウント」という名前を付けました。[タスクの実行時に次のユーザー アカウントを使用する] の下で、オブジェクト名ボックスに入力して SYSTEM に変更します。また、オペレーティング システムに合わせて [構成] を設定することが重要である可能性がありますが、よくわかりません。オンラインで簡単に検索しても、この設定が何をするのかはよくわかりませんでした。
- [トリガー] タブで [新規] をクリックし、[タスクの開始] を [起動時] に設定します。
- [アクション] タブで [新規] をクリックし、[プログラム/スクリプト] を [diskpart] (引用符なし) に設定します。[引数の追加] の下に、スクリプトのパスに設定したパスで次の内容を貼り付けます: /s "C:\Media Container\Mount Script.txt"。
- [条件] タブで、[コンピューターが AC 電源に接続されている場合にのみタスクを開始する] チェックボックスをオフにします。
オプションを確認して、他に設定したい項目があるかどうかを確認することもできますが、これらは必須の項目です。
これで完了です。次回再起動すると、SD カード上のストレージ スペースがハード ドライブとしてマウントされていることがわかります。