web-dev-qa-db-ja.com

従来の非dpi対応のアプリケーション解像度スケーリング?

私たちの環境は、dpiに対応していない、時代遅れですが絶対にミッションクリティカルなWin32アプリケーションを際立たせています。 800x600ディスプレイ用に最適化されています。現在、ほとんどのユーザーは、1280x1024から1680x1050の範囲のネイティブ解像度の17 "-20"ディスプレイを使用しています。ただし、このレガシーアプリケーションのテキストが小さすぎるため、これらのディスプレイは800x600で動作します。もちろん、これはOffice2007の画面にまったく収まらないことも意味します。

ほとんどのワークステーションはまだWindowsXPを実行していますが、一部はWindows 7を使用しており、今後さらに増える予定です。ユーザーの約3分の1がMSターミナルサービスを介してリモートでアプリを実行し、残りはローカルで実行しています。

ディスプレイのネイティブ解像度で最適に動作する他のアプリケーションに影響を与えることなく、1280x1024の画面全体に表示されるように、この特定のアプリケーションを約170%にスケーリングするために使用できる方法を知っている人はいますか? Mac OS Xでこれを行う方法は知っていますが、Windowsでこれを行う方法を見つけたことがありません。

もちろん、これは理想的にはグループポリシーを介してプッシュできるものです。そのようなものが存在する場合は、カスタムMSIパッケージを作成して、ある種のディスプレイ仮想化レイヤーを使用してレガシーアプリケーションを再展開することもできると思います。

2
Skyhawk

あなたへの2つの提案:

  1. Windows 7でローカルにアプリケーションを実行しているユーザーの場合、コンピューターにWindows XP Mode)をインストールし、そこにアプリケーションをインストールすることを検討してください。

  2. ターミナルサービスからアプリケーションを実行しているユーザーの場合、W2K8 TSリモートアプリを使用してアプリケーションを公開するか、W2K3で2Xなどのサードパーティソフトウェアを使用して、ネイティブ解像度でアプリを公開することを検討してください。

1
joeqwerty

何かが足し合わない。以前はどのようなモニターを使用していましたか?従来、古いCRTの「理想的な解像度」は100 dpi近くの解像度を維持していました。これは、ほとんどのデスクトップLCDがネイティブ解像度に使用するものでもあります。アプリを大幅に小さくするのではなく、大きなモニターで占めるデスクトップスペースを少なくするだけです。

さて、ユーザーが800x600で17インチまたは19インチのCRTを実行している場合、それは別の話です。

そうは言っても、Win 7の高dpiサポートを単純に使用してみましたか?私の理解では、高dpiをあまり認識していない古いアプリをスケーリングすることになるでしょう。完璧ではありませんが、非ネイティブ解像度でLCDを実行するよりも悪くなることはありません。

または、ユーザーの全体的なdpiが低いモニターを探すこともできます。 22 "1680x1050または19" 1280x1024モニターは、少しブーストします。

0
afrazier

画面のDPI(フォントサイズ)の設定を大きくしたWindowsターミナルサーバーをセットアップし、そこにアプリケーションをインストールします。次に、ユーザーに(通常のDPI画面で)アプリをリモートで実行してもらいます。

0
apenwarr