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 Filesx86 앱용 으로 사용 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 차이를 어떻게 처리하는지 잘 모르겠습니다.