web-dev-qa-db-ja.com

Windows 7は常にVHDをアタッチします

Win7では、VHDをドライブとして接続できますが、再起動後にVHDは接続されなくなります。とにかくそれを恒久的にすることはありますか?

8
Robert MacLean

ブート時に「ネイティブに」再接続する方法がわかりません。 DISKPARTコマンドで「起動スクリプト」を使用して再接続するか、「起動」プログラムグループにスクリプトを展開してログオン後に再接続できます。それは残念でハックですが、少なくともあなたが望むものをあなたに与えるでしょう。

@echo off
SET TEMPFILE="%TEMP%\%RANDOM%.TXT"
echo SELECT VDISK FILE=(vdisk filename here)>%TEMPFILE%
echo ATTACH VDISK>>%TEMPFILE%
DISKPART /s %TEMPFILE%
del %TEMPFILE%

悲しいですが、今のところ私が見ることができる最善の方法です...

11
Evan Anderson

VHDアタッチプログラムがうまくいきました。すべてのユーザーにVHDをアタッチします。起動スクリプトやスケジュールされたタスクを作成する必要はありません。プログラムはVHD自体をアタッチします。あなただけのプログラムをインストールする必要があります。 VHDファイルを1回添付するか、オプション-> VHDファイルを追加して自動添付を選択します。 Josipに感謝します。あなたは素晴らしいです

1
Naveen

別の方法は、サービスレベルにアタッチすることです。 Windows Resource Kit Toolsのinstsrv.exeとsrvany.exeが必要です。次のファイルを含む任意のフォルダーに配置します。

disk-W-install-permanently.cmd

@echo off
echo RUN THIS AS ADMINISTRATOR!
pause
cd %~dp0
copy srvany.* c:\windows\system32\
copy srvany-attach-disk-W c:\windows\system32\
instsrv disk_W_attach "c:\windows\system32\srvany.exe"
regedit disk-W-install-permanently.reg
pause

disk-W-install-permanently.reg

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\disk_W_attach\Parameters]
"AppEnvironment"=""
"Application"="c:\\windows\\system32\\cmd.exe"
"AppParameters"="/c srvany.bat"
"AppDirectory"="C:\\Windows\\System32"

srvany.bat

@echo on 
set log=%temp%\srvany.log

echo log: Running at %date% %time% >>%log%
diskpart /s srvany-attach-disk_W >>%log%
net stop disk_W_attach

srvany-attach-disk-W

select vdisk file=”D:\private\vm\HDD\disk_W.vhd"
attach vdisk
exit

dir/b

disk-W-install-permanently.cmd
disk-W-install-permanently.reg
instsrv.exe
srvany.bat
srvany.exe
srvany-attach-disk-W

VHDを指すようにスクリプトsrvany-attach-disk_Wを編集し、管理者権限でdisk-W-install-permanently.cmdを実行して再起動します。それで全部です!

1
lafero

VHD attach を使用してみてください。各起動後にVHDを接続するオプションがあります。 1つの部分がサービスとして実行されるため、UACプロンプトが邪魔になることはありません。

1
Josip Medved

私はこのためのプログラム、BMVHDloader.com、無料を作成しましたが、それでも常に更新されています。次のリリースでサービスになる予定です。そして、私はそれを必要とし、上記のものが利用できなかったので、配布は無料です。私はそれが必要で、それが周りになかった場合、私は誰もが無料でそれを手に入れられると思います。上記のもの( "VHDアタッチ")はVBで作成されたと思います)また、今月はサーバー2003およびXPのバージョンをリリースしています。:)それを必要とするすべての人に渡して確認してください私のサイトの更新のために戻ってきました。幸せなVHD

1
Kendall Bennett

これを行うネイティブの方法はありません。Windowsは現在、再起動後も接続されたVHDを保持しません。システム起動スクリプトが最善の策になるでしょう。

0
mikekol

Diskpart/sを使用するバッチファイルを作成し、さまざまなVHDファイルを添付するために使用するスクリプトを指定しました。次に、起動時に実行するスケジュールされたタスクを作成しました。

これは私がそれを行うための段階的なプロセスで作成したページです。

http://coding.infoconex.com/post/2009/11/26/Automatically-attaching-VHD-files-in-Windows-7-and-Windows-2008.aspx

0
Infoconex

同じdiskpart/sコマンドをタスクスケジューラに入れ、「最高の特権」をチェックして「コンピュータの起動時に実行」します。これは私にとっては(ブートディスクではなく)機能し、ユーザーがログオンする前でもvhdをマウントします。

0
Andys