2012-02-07 4 views
0

내 작은 응용 프로그램 테스트, 나는 델파이의 저장 대화 상자에서 문제를 만났습니다. 일반적으로 저장 대화 상자가 나타납니다 (다른 방법으로는 이미지 파일을 저장합니다). 어제 시스템이 (C :) separetely 인 동안 모든 데이터가 다른 파티션 (D :) 디렉토리에있는 컴퓨터에서 테스트했습니다. 작동하지 않습니다. saveDialog.InitialDir : = GetCurrentDir; (저장 대화 상자가 나타나지 않습니다.) 저는 델피에서 초보자이며 프로그램과 데이터가 서로 다른 두 개의 디렉토리에있는 일부 컴퓨터의 경우 문제를 해결하는 방법을 모르겠습니다. 제발 도와주세요, 미리 감사드립니다!저장 대화 상자에서 델파이, 데이터가 다른 파티션에 있습니다

+4

도움을 받으려면 다음을 읽어보십시오. http://meta.stackexchange.com/questions/5234/ –

+0

코드를 표시하고 보유하고있는 델파이의 버전을 알려주십시오. 나는 이런 행동을 재현 할 수 없다. 그것이 가치가있는 것을 위해, 현재의 디렉토리는 일반적으로 빈약 한 초기 디렉토리이다. 프로그램은 일반적으로 읽기 전용 위치에 설치됩니다. 대화 상자의 초기 디렉토리 설정을 자제하는 경우 내 문서 폴더가 기본값으로 설정됩니다. –

답변

0

TSaveDialog 여러 파티션을 잘 처리합니다. 문제는 다른 것과 관련되어 있습니다.

그렇다면 실제로는 GetCurrentDir()에 의존해서는 안되며 앱의 수명주기 동안 동적으로 변경되므로 실제로 어느 시점에서 실제로 가리키고 있는지 확신 할 수 없습니다. 어쨌든 혼자서도 TSaveDialog이 실패하지 않습니다.

TSaveDialog은 내부적으로 GetSaveFileName()을 사용하므로 실패 할 경우 CommDlgExtendedError()으로 전화하여 이유를 알아보십시오.