Windows에서 설치 프로그램없이 작은 프로그램을 어디에 설치합니까?


35

Windows 플랫폼에서 대부분의 대규모 응용 프로그램에는 자체 설치 관리자가 제공되어 설치 관리자와 함께 폴더를 설정하고 C:\Program Files다른 위치와 레지스트리 키를 추가하는 등의 작업을 수행 할 수 있습니다.

그러나 여전히 a 또는 .exea README와 a .dll또는 2 로 구성되는 도구가 많이 있습니다.

그러한 도구를 어떻게 설치해야합니까? 직접 C:\Program Files? 아래의 하나의 하위 폴더에 모두 C:\Program Files있습니까? 아래 어딘가 C:\Users\Me? 완전히 다른 곳?

또는 도구에 대한 다른 접근 방식 .exe은 다른 파일이 있는 도구에 대한 접근 방식 이거나 .dlls가 있는 도구 만 다르게 처리해야합니다.

이를 수행하기 위해 허용되는 표준 방법이 있습니까? "모범 사례"? 대답이 Windows 버전에 따라 다르면 Windows 7을 사용하고 있습니다.

특히, 명백한 대답으로 사람들을 때릴 수있는 것은 다음과 같습니다.

아래에 새 하위 폴더를 수동으로 만들려고했습니다 C:\Program Files. 사실 나는 이전에 그렇게했다고 생각했지만 Windows는 Destination Folder Access Denied 대화 상자를 표시 합니다. 이로 인해 맹목적으로 계속을 클릭하는 대신 두 번 생각했습니다 .

대상 폴더 액세스가 거부되었습니다.

지난 몇 년 동안 나의 것보다 더 큰 마음이 이것에 대해 여러 번 떠 올렸다는 가정하에, 어떤 종류의 "모범 사례"가 받아 들여 졌는지 커뮤니티에 물어보고 싶습니다.


3
이 질문을하는 관점은 무엇입니까? 구체적으로, 이것은 당신이 작성하고있는 응용 프로그램입니까, 아니면 다른 사람의 응용 프로그램을 설치하려고합니까?
Harry Johnston

2
@HarryJohnston : 다른 사람의 응용 프로그램을 설치하기위한 것입니다. 다른 날에 매우 큰 파일을 보거나 편집하도록 설계된 여러 프로그램을 다운로드했지만 설치 프로그램이없는 커플이있었습니다. 그러나 Windows의 대부분의 명령 줄 도구에도 동일하게 적용됩니다.
hippietrail

@ UltraDEVV : 다른 사람들 이이 문제를 고려하고 "모범 사례"를 결정했는지 알고 싶습니다. 설치 여부를 결정하기 전에 어떤 솔루션이 있는지 알고 싶습니다. C:\Program Files그리고 C:\Program Files명백한 솔루션이되기위한 잠재적 장벽에 대한 정보를 제공 합니다.
hippietrail

내 것을 읽으십시오! superuser.com/a/815831/354352
UltraDEVV

@ UltraDEVV : 나는 이미 당신을 읽었으며 이미 투표했습니다. 이 잠자는 사람의 질문이 3 년 반 동안 휴식을 취한 후에 다시 살아나는 것을 보는 것은 멋지다!
hippietrail

답변:


25

용도 C:\Tools

또는 C:\Users\<user>\Tools
 

설치 프로그램없이 많은 작은 프로그램을 사용하고 있으며 다음을 권장합니다.

  • 그들 모두를 저장 C:\Tools
  • 프로그램이 단일 파일로 구성된 경우 바로 아래에 놓으십시오 C:\Tools
  • 프로그램이 여러 파일로 구성되어 있으면 C:\Tools\ProgramName
  • SysInternals 도구에는 C:\Tools\_SysInternals많은 범주가 있으므로 특별한 범주 가 있습니다.

나는 C:\Tools마이그레이션 할 때 단순히 기계에서 기계로 이동 하고 있으며 매력처럼 작동합니다.

실용 샘플 (단축 목록) :

C : \ 도구 \ autoexec-elevated.bat
C : \ 도구 \ cleanup.bat
C : \ Tools \ BabelMap.exe
C : \ Tools \ netmon.exe
C : \ Tools \ notifu.exe
C : \ Tools \ putty.exe
C : \ Tools \ UDPixel.exe
C : \ 도구 \ battery.vbs

C : \ 도구 \ 3dclip-1.5.1 \
C : \ 도구 \ 대체 스트림보기 \
C : \ 도구 \ 블렌더 -2.71-windows64 \
C : \ 도구 \ 메모장 ++ \
C : \ 도구 \ QueryExpress \
C : \ 도구 \ winscp555 \
C : \ 도구 \ Xinorbis \

C : \ 도구 \ _Sysinternals \ accesschk \
C : \ 도구 \ _Sysinternals \ 자동 실행 \
C : \ 도구 \ _Sysinternals \ depends22_x64 \
C : \ 도구 \ _Sysinternals \ depends22_x86 \
C : \ 도구 \ _Sysinternals \ 로그온 세션 \

이것이 아이디어를 제공하기를 바랍니다.

편집 : 확장 정보

귀하의 질문에 따라 설치 중에 그러한 도구를 어떻게 설치해야합니까? 실제로 파일 복사 와 같은 수동 설정을 의미 합니다.

경험 법칙 : 수동으로 유지 관리되는 파일에 대해 수동으로 생성 된 폴더를 사용하십시오. 직접 제어하지 않는 (설치) 프로세스에서 시스템 폴더를 사용하도록합니다. 어떤 콘텐츠가 '자신의 콘텐츠'이며 (무료로 복사 할 수 있음) 설치 관리자가 관리하는 응용 프로그램을 즉시 인식 할 수 있습니다.

따라서 수동으로 설치하는 경우 (복사)

  • C:\Program Files -여기에있는 프로그램은 단순히 마이그레이션 할 수 없으며 다시 설치해야합니다 (마이그레이션에 대한 유용한 힌트 제공)
  • C:\Program Files (x86) -위와 같지만 64 비트 시스템에서는 32 비트 프로그램이 여기로 이동합니다 (특정 앱이 32 비트인지 64 비트인지 확인하는 힌트 제공)
  • C:\ProgramData-여기에서 찾은 응용 프로그램 저장소는 이러한 프로그램이 일부 데이터를 자체 방식으로 유지 관리함을 보여줍니다. 그러나 데이터에 프로그램을 넣는 것에 대해 물었 습니까? 좋은 생각이 아닙니다.
  • C:\Users\Steven\AppData다시 말하지만, 프로그램 을 데이터 아래에 두는 것은 좋은 생각이 아닙니다. 데이터에 대해 물었다면이 경로에 대해 몇 가지 흥미로운 것을 쓸 수 있습니다. 그러나 프로그램은 단순히 '아니오'입니다. :)

가능한 경로

  • C:\Users\Steven- 공유 컴퓨터이고 깔끔하게 유지하려는 경우 대체 루트 가 될 수 있으므로 전역 디렉토리를 만들지 않기로 결정합니다. C:\Users\Steven\Tools프로그램을 고려 하거나 Windows의 여러 위치에서 바로 가기를 통해 C:\Users\Steven\Desktop\Tools편안한 데스크탑 폴더 액세스 를 사용하려는 경우 에도 고려할 수 있습니다 . 그러나 이전 폴더가 더 좋을 수 있으며이 폴더의 바로 가기를 데스크탑 또는 필요할 때마다 배치 할 수 있습니다.

편집 : 추가 유용한 힌트 :

당신은 윈도우 10에서 인식하여 작은 프로그램 일부 확인하려면 시작 메뉴 (이름 또는 인스턴트의 증분 검색을 위해 사용하기 시작 상승 Ctrl+ Shift+ Enter,) 가 자신의 바로 가기를 추가하고 한 번에를 시작 . 그런 다음 제거 할 수 있습니다.


이것은 잘 들리지만 모범 사례 문서 또는 이와 유사한 것으로 지원됩니까? 그렇다면 실제로 답을 향상시킬 것입니다.

@DoritoStyle – 회사의 현재 모범 사례 문서를 확인해야 할 수도 있습니다. 좀 더 일반적인 모범 사례 문서에 대해 알고 있다면 알려 주시면 확인하겠습니다.
miroxlav

1
나는 "C : \ Utility"를 사용하지만 그렇지 않으면이 같은 접근법을 사용한다!
존 슈나이더

뭔가 다른이 아니라 단지뿐만 아니라 '도구'일보다 것이다 : 나는 같은 사용 뭔가 있다면 C:\Other또는 C:\Users\<user>\Other그 단지 '도구'로 "합법적"으로 간주됩니다?
Henrik

@ 헨릭-표준이 없기 때문에 자신의 감정에 맞는 것을 사용하고 충분히 명확하십시오. 예를 들어 C : \ Progs (이름은 설치 프로그램없이 작은 프로그램을 불러옵니다)를 시도했지만 하루가 지나면 직관적이지 않아서 이름을 도구로 되돌 렸습니다.
miroxlav

11

내가 아는 한 보편적 인 접근법은 없습니다.

응용 프로그램을 배치 C:\Program Files하는 것은 다소 표준적인 방법입니다. 그리고 당신은 액세스 보호를 얻을 수 있습니다 : 일반 (및 비 상승) 사용자는 쓸 수 없습니다 C:\Program Files. 따라서 실수로 해당 파일을 덮어 쓰거나 삭제할 수 없습니다. 바이러스로부터 더 잘 보호됩니다.

따라서에 폴더를 만들려고 할 때 경고 (상승 요청)가 표시됩니다 C:\Program Files.

따라서, C:\Program Files는 IS 가장 안전한 실행 파일의 장소.

그러나 .exe구성 변경 사항을 저장할 수 없기 때문에 구성을 저장하는 (휴대용) 앱에는 적합 하지 않습니다.


C:\ProgramData사용자간에 공유되는 응용 프로그램 데이터를 저장하기위한 것입니다. 기본적으로 모든 사용자는 여기에서 파일과 폴더를 만들 수 있지만이를 만든 사용자 만 파일을 수정할 수 있습니다.

이 폴더는 공유 앱 / 도구에 쉽게 사용할 수 있습니다. 동시에이 폴더에서 앱을 보지 못했습니다.


사용자 프로필에 앱을 배치 C:\Users\<username>하면 시스템의 다른 사용자는 액세스 할 수 없습니다. 프로필에 대한 모든 권한이 있으므로 보안 경고가 표시되지 않습니다. 이것이 Chrome이 사용자 프로필에 설치되는 이유입니다. 권한 상승을 요구하지 않고 쉽게 업데이트 할 수 있습니다.

사용자 별 모드에서 Windows Installer 패키지, .msi파일은에 설치하십시오 C:Users\<username>\AppData\Microsoft\Installer\<ProductId>. 따라서 비공유 앱을 사용자 프로필에 유지하는 것이 표준입니다.

나에게 utils유용한 응용 프로그램이있는 사용자 프로필에 폴더가 있습니다. 이 폴더는 사용자 PATH환경 변수에 추가되어 쉽게 액세스 할 수 있습니다.

공유 응용 프로그램의 경우 C:\tools다른 드라이브에서 또는 유사한 디렉토리를 사용 합니다. 전역 PATH변수에 추가되었습니다 .


7

나는 어느 시점에 이미 주어진 대답에 동의합니다. 그러나 실제로 작은 프로그램 (유틸리티)의 경우 bin 폴더 (내 경우에는 E : \ bin)에 넣는 경향이 있습니다. 이 프로그램은 일반적으로 단일 exe 파일이거나 내 자신의 python 스크립트입니다. 이 폴더를 PATH 변수에 추가하여 명령 줄 에서이 프로그램을 사용할 수 있습니다 (많은 경향이 있습니다).


또한 C:\Program Files\bin이러한 유형의 도구 및 유틸리티에 대한 일반적인 내용 을 고려했습니다 . 피드백 감사드립니다.
hippietrail

5

내가 아는 한 모범 사례는 없습니다. 처리 방법을 결정하는 것은 실제로 개인에게 달려 있습니다.

설치 프로그램이있는 모든 응용 프로그램과 동일한 표준을 따르는 경향이 있습니다. 그것이 실행 파일이거나 라이브러리 \Program Files\라면 64Bit이고 Program Files (x86)\32Bit 에 둘 것입니다 .

데이터 파일 Users은 일반적으로 사용자마다 다르기 때문에 내 폴더 에 저장하는 경향이 있습니다 .

에 배포되는 Chrome 및 Click-Once 응용 프로그램과 같은 응용 프로그램도 Users\AppData\있지만 일반적으로 여러 프로필에서 사용할 수 없습니다.

다른 방법으로 로그인하거나 관리자로 로그인해야 애플리케이션에 계속 액세스 할 수 있기 때문에 첫 번째 방법을 선호합니다.

권한 경고와 관련하여. 바로 경고 입니다. 잘못된 이유로 폴더를 사용하지 않도록 경고하는 것이지만 폴더를 사용하지 못하게하는 것은 아닙니다.


4
설치 프로그램이없는 응용 프로그램은 종종 오래된 운영 체제이거나 다른 운영 체제의 포트이므로 프로그램 경로에 응용 프로그램을 수동으로 설치하지 않는 것이 좋습니다. 따라서 경로의 공간에 항상 잘 맞지는 않습니다. YMMV.
Harry Johnston

3
수동으로도 설치하지 않는 것이 좋습니다. %ProgramFiles%다른 이유로 설치 프로그램이없는 응용 프로그램은 이식성이
뛰어나며

4

이러한 응용 프로그램을 표준화하려는 경우 Chocolatey 패키지 표준을 사용하는 것이 좋습니다 . 이것은 여러 가지 다른 이유로 좋습니다. 주로 많은 소프트웨어가 이미 패키지 되어 있으며 몇 가지 명령으로 어디에서나 설치할 수 입니다.

자유롭게 배포 할 수없는 응용 프로그램을위한 고유 한 패키지 를 만드는 것도 쉽습니다 . 귀하는 귀하가 소유 한 모든 것을 귀하의 네트워크에 배포 할 권리가있을 것입니다. 이러한 응용 프로그램의 경우 로컬 리포지토리를 설정할 수 있습니다 . 많은 컴퓨터를 관리하고 있거나 인터넷 대역폭이 제한된 경우 무료 제품에도 도움이 될 수 있습니다.


2

cygwin의 기본 설치 옵션을 선택하면 모든 파일이 c : \ cygwin에 배치됩니다. 나는 같은 접근법을 취할 것입니다. 개인적으로 ac : \ apps 폴더가 있습니다. 과거에는 c : \ utils와 c : \ cli (명령 줄의 줄임말)를 사용했습니다. 파일 구성 방법에 따라 다릅니다. 일회용 유틸리티를 catchall 폴더에 배치하는 것이 좋습니다. 유틸리티 제품군 (예 : cygwin, sysinternals, rktools)의 경우 자체 하위 폴더를 제안 할 수 있습니다. 예를 들어 모든 sysinternals를 c : \ apps \ sysinternals에 넣을 수 있습니다. cygwin을 설치하면, 여러분이 좋아하게 된 Unix 명령의 대부분이 (전부가 아닌) 필요합니다.

환경 변수 (시작> 제어판> 시스템> 고급> 환경 변수)를 변경하고 PATH 시스템 변수에 새 앱 경로를 추가해야합니다. 이를 통해 명령 프롬프트 나 Windows + R (실행 명령)을 사용하여 필요할 때 실행할 수 있습니다.


5
Cygwin 개발자는 Windows 표준을 신경 쓰지 않으며 루트 습관으로 폴더를 만드는 나쁜 습관을 복사하는 것은 잘못이라고 생각합니다. 나는 \Program Files리눅스에서 디렉토리를 만드는 것과 같은 느낌이 든다 .
Kamil

나는 그것이 왜 나쁜지 모르겠다. Cygwin은 Unix 환경을위한 것입니다. Cygwin이 Unix 도구를 사용하려는 사람들을 위해 Windows 표준을 충족시키는 이유는 무엇입니까?
일요일

@ 일 정확히! OP는 Windows 모범 사례를 요구했습니다.

1

C:\Users\Me\toolName(일명 % homepath % \ toolName) Me은이 도구 중 일부는 파일을 쓰기 위해 사용자가 원하는 것으로 가정하고 도구를 넣는 올바른 위치이며 Program files폴더 에 쓰려면 사용자의 권한이 필요 합니다. 또 다른 장점은 이미 사용자 공간에 있기 때문에 백업하는 것을 잊지 않는 것입니다.


2
내가 사용하는 것이 %homepath%' rather than C를 : \ 사용자 \ me`를. 기본 위치가 이동 된 경우에도 올바른 위치를 가리 키므로 이동하기가 더 쉽습니다. 쓰기 / 임시 부분 +1
Hennes

나는 그것이 추가되고 교체되지 않은 이유에서 수정되고 편집되었습니다. Hennes :)
Elazaron

0

이것에 대한 규칙은 없으며 원하는 곳 어디에서나 설치할 수 있지만 사용자가 아닌 폴더의 OSP (운영 체제 파티션)에 설치하는 것은 동일한 액세스 보호 기능을 제공하기 때문에 일반적으로 좋은 생각입니다 다른 응용 프로그램에 있습니까? 이로 인해 실수로 삭제하거나 제 3 자 (예 : 바이러스)에 의해 수정하기가 더 어려워집니다.

개인적으로 나는 보통 "C : \ Program Files (x86)"에 프로그램을 넣었다. 왜냐하면 내가 본 대부분의 그런 프로그램은 32 비트이기 때문이다. 그러나 64 비트 프로그램이라면 C : \ Program Files에 위치시킬 것이다. " 시스템 관련 프로그램 (예 : Imagex.exe) 인 경우 32 비트 프로그램의 경우 "C : \ Windows \ system32"에, 64 비트 프로그램의 경우 "C : \ Windows \ system32"에 배치되어보다 쉽게 ​​액세스 할 수 있습니다. 기본적으로 C : \ Windows \ system32 "로 시작하기 때문에 관리자 권한 명령 프롬프트를 실행할 때 명령 줄; 즉, C : \ location \ name.exe "대신"name.exe "를 입력하여 프로그램을 실행할 수 있습니다.

일부 사람들은 휴대용 컴퓨터를 분리하고 (폴더 외부에서 설치가 필요하지 않거나 감독되지 않은 교체를 수행하지 않음) 새 디렉토리를 만들어 일반 프로그램에서 설치 프로그램이 아닌 (휴대용이 아니지만 설치 프로그램을 사용할 필요가없는) 프로그램을 선호합니다. OSP (예 : C : \ Portable Program Files (x86) 또는 C : \ Dumpable Program Files (x86))에서 소리가 나지 않더라도 정확도가 더 높은 경우 2 중 2 위를 조언합니다. 예쁜.

요약하자면, 규칙이 없지만 OSP (사용자가 아닌 폴더)에 설치하면 원하지 않는 설치 제거 / 수정 (악의적 인 수정 포함) 및 일부 상황에서 프로그램을 보호 할 수 있습니다. 조직이 유리할 수 있습니다 (예 : 시스템 CLI 프로그램에 대해 이전에 언급 한 system32 폴더).


1
나는 당신이 근본적으로 그 질문을 오해했다고 생각합니다. 원래 질문의 첫 번째 부분은 "규칙은 무엇입니까"가 아니라 "모범 사례"입니다.
Steven Penny

@StevenPenny 전혀 다른 표현이 아닙니다. 문제의 핵심은 X를해야하거나 X를하지 않는 이유입니다.
Robin Hood

방금 내가 좋아하는 것을 생각해 냈습니다 : Etc또는 Etcetera당신이 진짜 멋진 팬지 라틴어를 선호한다면. 가까운 두 번째 장소에서 나는 또한 고려했다 Misc. 그러나 Etc나를 위해 거래를 봉인했습니다. :)
Henrik

0

Windows C:\ToolsSend To메뉴에서 바로 가기를 만드는 것이 언제 어디서나 액세스 할 수 있기 때문에 가장 좋은 방법이라고 생각합니다. 이렇게하면 작은 프로그램을 마우스 오른쪽 단추로 클릭하고 Windows의 어느 곳에서나 보내기 메뉴에서 도구 를 선택하여 작은 프로그램을 빠르게 "설치"할 수 있습니다 .

HowToGeek 에서 보내기 메뉴에 추가하는 방법에 대한이 자습서를 받았습니다 . 요약을 붙여 넣습니다.

SendTo 폴더로 이동하려면 탐색기 창을 열고 주소 표시 줄에 다음을 붙여 넣어야합니다.

% APPDATA % \ Microsoft \ Windows \ SendTo

그런 다음 프로그램을 복사 할 폴더의 바로 가기를 붙여 넣습니다.

그런 다음 새로운 휴대용 앱을 다운로드 할 때마다 압축을 풀고 해당 위치로 보냅니다.
유일한 문제는 수동으로 할 가치가있는 바로 가기를 만드는 것입니다.
문안 인사.


으로 보내기 폴더가있는 위치로 사용하기에 정말 적합하지 않은 설치 프로그램. 특정 목적, 즉 프로그램에서 추가 처리를 위해 파일 / 문서를 보낼 수 있도록하는 것입니다 (예 : 메모장에서 파일 열기). 또한 보내기 폴더에있는 모든 파일은 .DLL 지원을 포함하여 Windows 컨텍스트 메뉴에 나타납니다. 그것은 대부분의 경우에 바람직하지 않습니다.
나는 말한다 Reinstate Monica

1
아뇨. 당신과 모든 다운 보 터들이 내가 의도 한 것을 얻지 못한 것 같습니다. 예 C:\Tools\ 를 들어 Send To폴더에 바로 가기를 추가하고 어디에서나 액세스하면 각 프로그램을 수동으로 처리하는 번거 로움이 없습니다. 내 대답은 다른 것들에 대처하는 과정을 더 빨리 읽을 수있을 것입니다. 그것은 나를 위해 잘 작동합니다.
UltraDEVV

귀하의 답변에이 추가 설명을 포함하도록 가능한 수정을했습니다. 답변은 의견에 포함 된 세부 정보가 아니라 답변을 기반으로 상 / 하로 투표되므로 도움이 되길 바랍니다.
나는 말한다 Reinstate Monica

아니요, Windows Vista부터는 %APPDATA%변수가 %USERPROFILE%\AppData\Roaming폴더에 뿌리를두고 있으므로 Windows 7의 경우 위의 경로가 정확합니다. 그러나 Windows XP에서는 표시된대로 로밍 폴더를 추가해야합니다.
나는 Reinstate Monica

귀하의 질문이 명확하지 않다고 생각되면이를 명확히해야합니다. 왜 두 가지 답변을 제출 했습니까?
Ramhound

0

Windows의 기본 시스템 경로 환경 변수는 다음과 같습니다 (설치된 Windows 버전에 따라 다름).

%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\

이러한 옵션 중에서 % SystemRoot % (보통 C:/)는 읽기 / 쓰기에 가장 적합한 것으로 보이며 나중에 쉽게 참조 할 수 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.