5

標準の Windows 7 インストール ディスクをリカバリ モードで実行しているときに、コマンド ラインを開いてカスタム ビルドのアプリケーションを実行すると、「サブシステムはサポートされていません」というエラーが表示されます。/SUBSYSTEM:CONSOLE、WINDOWS、および NATIVE とリンクしようとしましたが、どれも機能しません。

私はパーティションテーブルに少し問題がありました (バグ、または Windows に含まれるパーティションマネージャーからの少なくとも「ばかげた」動作を発見した可能性があります) ので、それを修正するためのユーティリティを書きました。私のプログラムは「Windows.h」を使用してインポートCreateFileしますが、必要に応じて、Windows 固有のヘッダーを使用せずに標準 C++ (または標準 C) のみを使用できます。

アプリケーションを実行するには何をする必要がありますか?

4

2 に答える 2

5

Windows回復環境は、Windowsプレインストール環境のスーパーセットです。

Windows PEは、Windowsの簡略版であり、WoW(Windows on Windows)を含む多くのサブシステムがありません。

これは、32ビットの実行可能ファイル(または32ビットコンポーネントを含むもの)が64ビットのWindowsPEディスクで実行されないことを意味します。(WinPE 32は64ビットシステムをインストール/修復できないことに注意してください。その逆も同様です)。

私の問題の解決策は、64ビットコードにコンパイルすることでした-説明的なエラーメッセージはMicrosoftにとって素晴らしいものでした:|

多くの検索の後に見つかりました: http ://technet.microsoft.com/en-us/library/cc766093(v = ws.10).aspx

于 2012-06-17T11:35:19.300 に答える
0

何らかの方法でC++CRTを使用していますか?私はそれがサポートされているとは思いません。CreateFileそれが適切かどうかさえ疑わしいです。NtCreateFile代わりに調べてください。

于 2012-06-17T08:43:02.630 に答える