C#/ Visual Studio 2017を使用してコンソールアプリケーションを作成しました。コンソールアプリケーションをVSまたはWindows 10マシンから実行すると、完璧なコンソールアプリケーション(オプション/フォント/レイアウト/色)のデフォルト設定が使用されます。しかし、Windows Server 2012 R2を使用してテストサーバー上で実行しようとすると、ランダムな設定(小さなバッファサイズ/大きなフォント/奇妙なウィンドウ)が使用されます。私が試した:C#コンソールアプリケーションを既定のコンソール設定(Windows Server 2012)を使用するように設定する方法
- は、ローカル上の同じデフォルトにサーバ(2012)のデフォルト設定(Windows 10/VS)
コマンドライン(program.exe)からアプリケーションを実行すると、デフォルトの設定が使用されます。しかし、私が実行可能ファイルをクリックすると、それはしません。私はここで何が欠けていますか?
OSはコンソール設定をユーザーアカウントとアプリケーション名で記憶します。 Cmd.exeとyourapp.exeは同じではありません。これらの設定はRegedit.exe、HCKU/Consoleキーで確認できます。 Superuser.comはそれについて質問するのに良い場所です。 –
恐ろしい!ユーザーとアプリケーションのコンソールウィンドウが別々の設定内にあることに気付かなかった。エントリを見つけ、アプリケーションのデフォルトを設定します。彼らは非常に異なっていた。ありがとうございました! – Gee
これはアプリケーション名に基づくのではなく、最初のコンソールウィンドウのタイトルに基づいています。 'CreateProcess'を呼び出すときに' STARTUPINFO'でウィンドウタイトルを設定しないと(例えばCMDの 'start'コマンドを使うとき)、最初のウィンドウタイトルはアプリケーションパスです。また、コンソールアプリケーションが.lnkショートカットを介して起動された場合、設定はレジストリではなくショートカットからロードされ、ショートカットに保存されます。 – eryksun