安西先生 ddしたいです@Windows
dd for Windows 0.9.9.6 は,焼く中身のイメージが外付けドライブに置いてあると0バイト扱いになってしまうバグがあるようだ.(そのような現象は全く再現しないようなので,お詫びと共に取り消します.)最近はQtベースのImage Writer for Windows (Win32DiskImager.exe) なんてのが出てるようだが,
これはイメージの拡張子が *.img でないと開けない(ファイル・オープン・ダイアログのフィルタ)という誰得仕様.
どっかで見かけた「Windows用dd」を名乗る別のツールで見たが,確か \\.\ほげほげ
という,NT名前空間のパスがどうとかいう記法を(CreateFile
で)使えば,Windows NTでもLinuxの /dev/sda
的なアクセスができる気がした.後で調べよう.いやそれこそ,こないだ買った Windows via C/C++ に書いてあるかな?
追記: 「別のツール」とは,"windows dd" で(英語で)ググって先頭に来るこれのこと:
- http://www.chrysocome.net/dd chrysocome.net - dd for windows
実際 Image Writer for Windows では \\.\ほげほげ
を使ってるね:
sprintf(location, "\\\\.\\%s", filelocation); hFile = CreateFile(location, access, 0, NULL, (access == GENERIC_READ) ? OPEN_EXISTING:CREATE_ALWAYS, 0, NULL);
Windows via C/C++ には書いてなくて Windows Internals にはちょっとだけ書いてたが,やはりMSDNを読まないと駄目か...
- http://msdn.microsoft.com/en-us/library/aa365247%28v=vs.85%29.aspx#namespaces Naming Files, Paths, and Namespaces (Windows) > Namespaces
Win32 Device Namespaces というのか.Internalと言うより普通に外部仕様なのだろうか... あまり知らんかったが.