Czy najlepszą praktyką jest instalowanie programów w Program Files?

9

Mamy aplikację, która jest dostarczana i instalowana przez firmę zewnętrzną. W tym celu pobierają opłatę za „konsultację” według stawki rynkowej.

Ku mojemu zdziwieniu zainstalowali większość folderów w katalogu głównym dysku C.

Czy można zainstalować je w katalogu głównym dysku C? Czy ta metoda instalacji może powodować problemy? A może zamiast tego należy zainstalować aplikacje w Program Files?

Zimna T.
źródło
Nie zadałbym tego pytania na temat przepełnienia stosu (a nawet programistów). Prawdopodobnie zostanie obniżony i dość szybko zamknięty w przypadku przepełnienia stosu.
ChrisF
7
Jesteś zszokowany tym, że drogie oprogramowanie „korporacyjne” jest wyjątkowo niskiej jakości? Nie bądź To nie jest rzadkie.
Michael Hampton
2
Myślę, że powodem jest to, aby długość zmiennej PATH była jak najkrótsza. Możesz użyć zmiennej% PROGRAMFILES% na swojej ścieżce, jeśli musisz ją rozszerzyć, zamiast dodawać pełną ścieżkę do miejsca, w którym zainstalowano aplikację.
ChrisF
@MichaelHampton rzeczywiście jestem zszokowany, tam „inżynierowie instalacji” są jeszcze gorsi!
Zimno T
2
Jednym z dużych problemów związanych z tym, że Program Files jest najlepszą praktyką jest to, że tworzenie katalogów na dysku C nie wymaga uprawnień administratora, a Program Files tak. Próbując napisać oprogramowanie, które nie wymaga administratora, C może być lepszym rozwiązaniem (chociaż w większości przypadków użycie AppData byłoby prawdziwym rozwiązaniem. Wskazując tylko jedną potencjalną różnicę. Myślę, że wszystko inne powiedziane tutaj stoi.
Nick

Odpowiedzi:

9

Chociaż nie jest to oficjalne źródło, Raymond Chen z The Old New Thing omówił to .

W szczególności powyższy post na blogu stanowi:

Niektóre programy certyfikacji oprogramowania Microsoft (takie jak logo Windows) wymagają, aby aplikacje ustawiły domyślną lokalizację instalacji na katalog Program Files.
/.../
Program Files został wprowadzony w celu uporządkowania chaosu. Pomyśl o tym jak o malowaniu linii w garażu.

Oczywiście zgodność z warunkami tych programów certyfikacji oprogramowania miałaby zastosowanie tylko wtedy, gdy zamierzałeś ubiegać się (lub już złożyłeś wniosek i otrzymałeś certyfikację w ramach) tych konkretnych programów certyfikacji oprogramowania. Co więcej, w tym przypadku chodzi o domyślną ścieżkę instalacji, nic więcej.

CVn
źródło
1
OTOS, jeśli kupię oprogramowanie i jest napisane przez ludzi, którzy nie są wystarczająco inteligentni, aby zdać sobie sprawę, że istnieją standardy i są tak głupie, jak idąc bezpośrednio do C - cóż, to tam, gdzie „tak dobrze, jak prawo może wymagać zwykłej praktyki, chyba że uzgodniono inaczej wchodzą w grę „i” rażące zaniedbanie czytania dokumentacji ”.
TomTom,
0

Istnieją pewne zalety, że nie można zainstalować %programfiles%. Jednym z nich jest zabezpieczenie programu przed użyciem go jako trampoliny dla złośliwego oprogramowania (więcej szczegółów patrz na przykład http://foundstone-dire-detect-insecurely-regist.software.informer.com/1.0/ lub google po więcej „Foundstone STRASZNY").

Kolejną zaletą byłoby zainstalowanie bez wymagających podwyższonych uprawnień. Może to być znowu ważne, jeśli jakiś program zostanie przejęty, nie będzie miał prawa dostępu do naruszenia innego rozwiązania.

W świecie Linuksa powszechną praktyką jest oddzielne instalowanie pakietów oprogramowania innych firm i systemu. Na przykład, podczas gdy zwykłe pakiety oprogramowania wchodzą /usr/bin, trzecia strona zazwyczaj wchodzi /usr/local/binlub /usr/share/binjeśli musi być współdzielona przez wielu użytkowników, lub $HOME/binjeśli ma być używana przez tego konkretnego użytkownika. Słysząc, jak firma doradcza instaluje te programy na twoim komputerze, prawdopodobnie mają pewne (nie mówiąc o wymyślonych) zasadach użytkownika, które sprawiają, że korzystanie z nich jest konieczne lub przynajmniej wygodniejsze %programfiles%.

wvxvw
źródło