CTP 이후 64 비트 버전의 Windows 7을 사용해 왔으며 C:\Program Files (x86)
폴더에 설치되는 응용 프로그램에서 몇 가지 문제가 발생했습니다 . 어쨌든 두 개의 별도 Program Files 디렉토리를 갖는 목적은 무엇입니까?
내가 설치 한 모든 프로그램이 C:\Program Files (x86)
폴더에 들어갔습니다 . 앱이 32 비트인지 64 비트인지는 중요하지 않습니다. 64 비트 앱이 배치되지 않는 이유는 무엇 C:\Program Files
입니까?
C:\Program Files
대신 기본값을 변경하는 방법이 있습니까? 방금 모든 것을 넣으면 아무것도 엉망이 C:\Program Files
됩니까?
실제로 64 비트 앱용으로 별도의 폴더를 갖는 것이 이점이 있다면, C:\Program Files
x86 앱용 으로 사용 C:\Program Files (x64)
하고 새로운 64 비트 앱용 으로 새 폴더를 만드는 것이 더 합리적인 것처럼 보입니다 . 이는 이전 버전과의 호환성을 유지하는 데 도움이됩니다. 소프트웨어 개발자로 일하고 있으며 일부 프로젝트에는 아래의 라이브러리에 대한 경로 참조가 포함되어 있습니다 C:\Program Files
. 이제 이러한 참조는에 배치 된 Windows 7 시스템에서 손상되었습니다 C:\Program Files (x86)
. 설치 프로그램에서 대상 위치를로 변경하려고 시도했지만 C:\Program Files
무시되었지만 앱은 계속 진행되었습니다 C:\Program Files (x86)
.
32 비트와 64 비트 컴퓨터간에 소스 코드를 공유해야하므로 다른 컴퓨터에서 이러한 라이브러리의 경로를 다르게 설정하는 일부 구성 파일을 망칠 필요가 없기 때문에 이는 매우 실망스러운 일입니다.
환경 변수에 대한 편집 : (. 단순에 대한 변수의 영어 기본값 만 사용) 64 비트 시스템에서이 %ProgramFiles%
될 것입니다 C:\Program Files
브랜드의 새로운 변수가 동시에 %ProgramFiles(x86)%
될 것입니다 C:\Program Files (x86)
. 따라서 설치 될 폴더 경로를 찾아야하는 32 비트 프로그램이있는 경우 32 비트 또는 64 비트 버전의 Windows에서 실행 중인지 확인해야합니다. 사용할 환경 변수를 알기 위해 이 고려 사항없이 작성된 32 비트 앱은 64 비트 시스템에서 올바르게 작동하려면 업데이트해야합니다. 따라서 환경 변수를 사용하더라도 이전 버전과의 호환성이 손상됩니다.
또한 %ProgramFiles(x86)%
32 비트 버전의 Windows에는 없습니다. 그렇다면 32 비트 앱은 항상 해당 환경 변수를 사용할 수 있으며 실행중인 OS에 따라 조건부 논리가 필요하지 않습니다.
%ProgramFiles%
환경 변수를 사용하면 문제가 해결 되는지 궁금합니다 . 그것이 x86 / 64bit 차이를 어떻게 처리하는지 잘 모르겠습니다.