プログラムをC:/に直接インストールするのはなぜですか?


14

一部のプログラムがC:/に直接インストールされ、ほとんどの場合のようにC:/ Program Files /フォルダーにインストールされない理由は何ですか?

また、なぜドライバーがここで解凍されるのが一般的ですか?C:/-drivesにはIntel、Nvidia、ATI、Xeroxのフォルダーがたくさんありますが、デスクトップや他のユーザー固有のフォルダーではなく、デフォルトではまったく意味がありません。ファイルは一時的なものであるため、システム全体で必要とされるべきではありません。

ありがとう!

編集:この質問は特定のソフトウェアに関するものではなく、通常の方法から逸脱することが理にかなっている理由です。実行し続ける必要のあるサーバーと何か関係があると思いましたが、これは事実に基づいていないため、サーバープログラムをC:/ Program Files /から実行してはならない理由です。許可が設定されます。ドライバーのインストールファイルなど、システム全体で必要なファイルについても同様です。

明らかにこれはWindowsのみに関係します。


6
ソフトウェアのインストールは開発サイクルの主要な部分であり、プログラムファイル以外の領域に展開する特定の理由がある場合、開発者が確実に知りたいことがあります。だから私は一般的にトピックについて言うと思います。
GrandmasterB

MS-DOSアプリケーションはC:\にインストールされたと思いますが、もちろんWindows 10はMS-DOSではありません。
juniorRubyist

回答:


11

c:\にあるフォルダーに何かを直接インストールしたり、c:でドライバーを解凍したりする技術的な理由はありません。
Microsoftが公開しているWindowsソフトウェアの設計ガイドにも違反しています。

ただし
、そのフォルダ内で何かを手動で実行するようにユーザーに指示する必要がある場合、ユーザーに簡単な指示を与えることができると便利です。
たとえば、「マイコンピュータ」を開き、C:を開き、[フォルダ]を開いてから、「セットアップ」プログラムを開きます。
このようにパスを強制的に修正することにより、すべてのユーザーに一貫性があり、テクニカルサポートの作業がはるかに容易になります。
これは、ドライバーのダウンロードの場合によくあります。すべての主要メーカーはそのようにしています。

私はときどき第一線のヘルプデスクで働いてきました。
何人のユーザーが何かをダウンロードし、それを解凍し、その間に電話をかけ、15分後に解凍したファイルをハードディスクのどこに置いたかを思い出せないことを信じられないでしょう。
次に、ヘルプデスクまたはテクニカルサポートに電話します。
あなたがそれらの呼び出しを処理する人であれば、これらのファイルを直接C:\に置くロジックをすぐに理解し始めるでしょう。


4
さらに、「C:\ Program Files」はロケールとプロセッサアーキテクチャ(x86とx64)の両方に依存していますが、「C:\」は依存していません。「%ProgramFiles%」はロケールに依存しませんが、実際のパスのように見えない、またはパーセント記号が正しくない半熟したユーザーを混乱させる傾向があります。64ビットシステムでは、32ビットアプリケーションのパスは依然として間違っています。
抽象化

1
その場合、C:\よりもデスクトップにファイルを抽出する方が簡単だと思う
-phuclv

@phuclv特にWindows 8以降ではそうではありません。デスクトップフォルダーには、ファイルシステムのアクセス許可が非常に複雑であるため(特に移動プロファイルを使用する場合)、インストーラーに干渉する可能性があります。また、別の場所(ネットワークまたはストレージスペースの場所)にリダイレクトすることもできます。また、多くのウイルススキャナは、デスクトップから実行しようとするとインストーラを信頼しません。Windows 10の時点で、AppLockerはデスクトップからの実行を妨げる可能性がある別の可能性があります(多くの企業では、デスクトップからの実行をブロックするように設定されています)。
トニー

7

一部のプログラムがC:/に直接インストールされ、ほとんどの場合のようにC:/ Program Files /フォルダーにインストールされない理由は何ですか?

一部の開発者は、「正しい」ことを行うには気がつかないか怠tooであるため、標準的な規則に従っていません。多くのアマチュア開発者は、環境にクエリするのではなく、ソフトウェアやインストーラにパスをハードコーディングします(例:%TEMP%、%APPDATA%、%PROGRAMFILES%)。

また、なぜドライバーがここで解凍されるのが一般的ですか?C:/-drivesにはIntel、Nvidia、ATI、Xeroxのフォルダーがたくさんありますが、デスクトップや他のユーザー固有のフォルダーではなく、デフォルトではまったく意味がありません。ファイルは一時的なものであるため、システム全体で必要とされるべきではありません。

Tonnyが提案したように、これは技術サポートを簡素化することも一部ですが、それはあなた自身の便宜のためでもあります。すべてのユーザーが簡単にアクセスできる場所にドライバーファイルを抽出すると、ドライバーを再インストールする必要がある場合に、システムがファイルを簡単に再度見つけることも簡単になります。残念ながら、ほとんどのベンダーは古いファイルをクリーンアップしていないため、二度と使用されないギガバイトの古いドライバーパッケージになる可能性があります。場合によっては、それらを%TEMP%または「すべてのユーザー」アカウントに抽出する方が適切な場合があり、一部のベンダーはそれを正確に行います。


2

「ほとんどの」ソフトウェアと構成ファイルは、長いディレクトリパス、大文字と小文字の混在、スペース、「非標準」文字を処理できますが、常にそうとは限らず、ワークフローの途中でこれにつまずくのは簡単なことです。

MicrosoftがVistaおよび7のユーザーディレクトリをルートディレクトリに移動したことは、実際にルートディレクトリ(デフォルトでは「c:」)を好む人の数を示す適切な指標です。


1

スペース。理由はスペースです

にスペースがありC:/Program Filesます。これをそのままシェルコマンドに入れると、2つの別個の引数として解釈されます。C:/ProgramおよびFiles。もちろん、これを引用するだけで修正するのは非常に簡単です。"C:/Program Files"またはC:/Program\ Files、一部のプログラムはこれを台無しにしています。この問題を回避するため、または怠け者のスクリプトライターを簡単にするために、プログラムがC:直接インストールされることがあります。

プログラム開発者が勤勉で、自分のすべてのファイルパスを正しくエスケープしたとしても、チェーン内のどこかのライブラリまたは外部スクリプトがうまくいかない可能性があることに注意してください。プログラムには非常に多くの依存関係があるため、全員を乗せようとするよりもスペースを使用しない方が簡単な場合があります。


物の長さ。 c:\program files入力するのは長いです。タブを使用できますが、パラメータの場合は使用できません。そして、しばしばその中のディレクトリは長くなる傾向があります。 C:\Program Files\Microsoft Visual Studio 10.0 実際、%PATH%は実際には多くの長いディレクトリに対応できません。「2000文字または4千文字の制限があるため
-barlop

0

これはWindowsのみに関係すると述べていますが、ソフトウェアは他のオペレーティングシステムとの間で移植される場合があります。また、Windowsのバージョンには違いがある場合があります。たとえば、Windowsの一部の翻訳バージョンでもこのフォルダー名が翻訳され、ユーザーは場所を変更することもできます(たとえば、「C:\ Program Files」しばらく)。これはすべてソフトウェアによって検出できますが、固定された場所を使用する方が簡単です。また、ドライバーの場合、OSからこの情報を入手できないときに、ファイルがどこにあるかを知る必要があります。


0

一部の古いプログラム(DOS時代、Win 3.1)では、開いているパスにスペースまたは「長い」名前を使用できませんでした。しかし、これは最近では非常にまれです。

インストーラーは、インストール先のシステムに関する設定を取得することになっています。これらの設定には、特にプログラムファイルディレクトリの場所が含まれることが想定されています。正規のプログラムはインストーラーにパッケージ化されており、この情報に接続して、提供されているデフォルトから変更した場合に追跡します。

一方、ドライバーはオペレーティングシステムによって処理されるように設計されています(デバイスマネージャー->ドライバーの更新)-インストーラー内にある場合、デバイスマネージャーはドライバーにアクセスしてインストールできません。彼らはあなたがそれらを置く場所について柔軟ではありません。

消費者レベルでは、スマートフォンとタブレットは、これらがエンドユーザーの懸念であるという考えに本当に挑戦しています。


0

一部のプログラムは、スペースのあるパス(つまり「プログラムファイル」)に存在すると誤動作します。そのため、C:のルートにインストールされます。

ただし、多くのプログラマーは怠け者であり、便宜上、デフォルトでプログラムをデフォルトでC:\に組み込むことにしました。


0

TLDR; 他のプログラムが依存する可能性のある重要なプログラムを、インストールしたゲーム/ブラウザ/その他のような通常のプログラムから分離するため。

人々がC:\にインストールすることを選択する別の大きな理由は、最初にプログラムファイルを作成した理由に関係すると思います:ユーザーフォルダを作成してプログラム/システムからユーザーファイルを分離するのと同じ方法でシステムファイルからプログラムを分離するファイル。

そのため、開発者は、ユーザーが何のために(オーディオプラグインのようなパッケージ化された開発アイ​​テム、またはpython / ruby​​のような言語全体を考えているか)覚えていないため、ユーザーがアンインストールすることを望まない場合、プログラムをC:\ドライブにインストールします"システムファイル"に含めるだけでなく、明らかな理由でWindowsフォルダーに入れないでください。

私はこれが古い投稿であることを知っていますが、ロックされておらず、追加することがありました。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.