BinPlace는 배치하는 파일을 저장할 디렉터리 트리를 만듭니다. The structure of that tree is determined by the parameters that are passed to BinPlace's command line, the values of certain environment variables, and the contents of a text file known as a place file.
두 조건 중 하나가 충족되는 경우 BinPlace는 파일을 배치합니다.
파일은 BinPlace 명령줄에 지정됩니다.
파일은 연결된 실행 파일과 동일한 디렉터리에 있는 기호 파일이며 실행 파일은 명령줄에 지정됩니다. 이 경우 기호 파일과 실행 파일은 서로 다른 디렉터리에 배치됩니다. BinPlace는 이 시나리오에서 분할 또는 제거( 공용 기호 및 개인 기호 참조) 또는 제거( 기호 파일 시스템 참조)를 수행할 수도 있습니다.
BinPlace에서 파일을 배치하면 동일한 이름의 이전 파일을 자동으로 덮어씁니다. 그러나 BinPlace는 기본적으로 최신 파일을 덮어쓰지 않습니다. 특히 실행 파일의 최신(또는 동일한) 버전이 있는 경우 실행 파일이나 연결된 기호 파일은 디스크에 기록되지 않습니다. If you wish BinPlace to overwrite files regardless of their timestamp, use the -f command-line option.
파일 대상
BinPlace가 명령줄에 지정된 파일을 배치하는 디렉터리의 이름은 루트 대상 디렉터리와클래스 하위 디렉터리라는 두 디렉터리를 연결하여 만듭니다. (디렉터리에는 사용자가 선택한 이름이 있을 수 있지만 일반적으로 루트 대상 디렉터리가 파일을 배치하는 디렉터리 트리의 루트이고, 클래스 하위 디렉터리가 특정 파일 또는 파일 그룹을 배치하는 것이 논리적으로 보이는 하위 디렉터리입니다.)
루트 대상 디렉터리 -r RootDestinationPath 명령줄 매개 변수를 사용 하 여 지정할 수 있습니다. 생략하면 기본값은 각각 x86 기반, Itanium 기반 또는 x64 기반 컴퓨터의 _NT386TREE, _NTIA64TREE 또는 _NTAMD64TREE 환경 변수에 의해 결정됩니다. 루트 대상 디렉터리를 다음 방법 중 하나로 정의해야 합니다. 정의되지 않은 경우 BinPlace가 실행되지 않습니다.
클래스 하위 디렉터리가 일반적으로 위치 파일에 지정됩니다. 한 파일에 대해 여러 클래스 하위 디렉터리를 지정할 수 있습니다. 그러면 BinPlace가 파일의 복사본을 만들어 지정된 각 위치에 배치합니다. 자세한 내용은 파일 구문 배치 를 참조하세요. -:D EST ClassPath 명령줄 매개 변수를 사용하여 클래스 하위 디렉터리를 지정할 수도 있습니다.
기호 파일 대상
실행 파일이 BinPlace의 명령줄에 나열되고 동일한 디렉터리에 연결된 기호 파일이 있는 경우 BinPlace는 기호 파일도 복사(또는 변경)합니다. 기호 루트 디렉터리, 클래스 하위 디렉터리 및 파일 형식 하위 디렉터리의 세 디렉터리를 연결하여 이 기호 파일을 배치하는 디렉터리를 만듭니다.
기호 루트 디렉터리 -s SymbolRoot 명령줄 매개 변수를 사용 하 여 지정할 수 있습니다. If you are using the -a and -x switches, stripped symbol files will be placed under the SymbolRoot directory -- in this case, you can use -n FullSymbolRoot to specify the location of full symbol files.
클래스 하위 디렉터리가 일반적으로 위치 파일에 지정됩니다. 한 파일에 대해 여러 클래스 하위 디렉터리를 지정할 수 있습니다. 그러면 BinPlace가 파일의 복사본을 만들어 지정된 각 위치에 배치합니다. 자세한 내용은 파일 구문 배치 를 참조하세요. -:D EST ClassPath 명령줄 매개 변수를 사용하여 클래스 하위 디렉터리를 지정할 수도 있습니다. And if the -y command-line switch is used, no class subdirectory will be used for symbol files -- the destination directory will simply consist of the symbol root directory plus the file-type subdirectory.
파일 형식 하위 디렉터리가 기호 파일에만 사용됩니다. 원래 실행 파일의 파일 이름 확장명에서 결정됩니다. 따라서 .exe 파일과 연결된 기호 파일은 exe 하위 디렉터리에 배치되고, DLL과 연결된 기호 파일은 dll 하위 디렉터리에 배치되고, 드라이버와 연결된 기호 파일은 sys 하위 디렉터리에 배치됩니다. 이 규칙은 파일 이름 충돌을 방지하는 데 도움이 됩니다. 예를 들어 myprogram.exe 및 myprogram.dll 모두 myprogram.pdb라는 기호 파일이 있을 수 있지만 이러한 기호 파일은 서로 다른 하위 디렉터리에 배치됩니다.
이 알고리즘에는 한 가지 예외가 있습니다. If neither -s nor -n is supplied, the full symbol files will be placed in the same location as the binaries.
Note If you list the symbol file name in BinPlace's command line, BinPlace will move it like any other file and will not examine its contents. BinPlace의 기호 파일 조작 기술을 사용하려면 기호 파일 이름이 아닌 실행 파일 이름을 나열해야 합니다.