2010-06-09 2 views
1

Delphi 2010에서는 사용자가 폴더을 찾아보고 선택할 수있게하려고합니다. 폴더는 DSLR에 의해 생성 된 장치 (?)에 있습니다.폴더 찾아보기에서 카메라 장치를 볼 수 없음

폴더는 위의 그림과 같이 Windows 탐색기에서 볼 수 있습니다. 폴더는 TOpenDialog에서 볼 수 있으므로 폴더를 탐색하고 파일을 선택할 수 있습니다.

불행히도 SHBrowseForFolder (코드는 웹에서 발견되었지만 이해할 수 없음) 또는 SelectDirectory를 사용하여 카메라 장치 나 폴더를 볼 수 없었습니다. (사이드 노트 : IMO, SelectDirectory는 사용자가 탐색하는 동안 폴더의 파일을 볼 수 있기 때문에 훨씬 멋진 UI입니다.)

폴더가 장치에 있는지 (?) 카메라 소프트웨어에 의해 생성됩니다.

TOpenDialog를 호출하여 '*.'이 (가)있는 폴더를 탐색하는 몇 가지 트릭을 보았습니다. 결과에 대해 ExtractFileDir을 사용하지만 강력한 UI 나 IMO가 아니라면 좋은 UI입니다.

내가 찾고있는 것은 TOpenDialog & Windows Explorer에서 볼 수있는 것과 동일한 장치 (카메라 장치 포함)를 볼 수있는 "폴더 찾아보기"입니다. (이상적으로는 아래 그림과 같은 멋진 모습을 나타냅니다.)

의견이 있으십니까?

나중에 : Capture Images from Camera connected to Computer and listed in Imaging Devices이 (가) 찾고 있습니다.

답변

1

거기에 표시되는 폴더는 Windows 탐색기의 확장 프로그램에 의해 작성되며 "드라이브"가 아닙니다. 거기에 기기를 쉽게 넣을 수 있고 복사 할 수 있습니다. Windows 탐색기 사용. 모든 작업은 Windows 탐색기 확장 프로그램에서 처리 할 수 ​​있습니다. 이 방법으로 생각해보십시오 : PATH는 해당 장치의 파일에 무엇이 있습니까? 파일에 대한 PATH가 없으면 모든 Windows 응용 프로그램에서 실제로 열 수 없습니다! 당신의 DSLR 카메라의 메뉴로

이동, 그것은 (독점 보이지 않는 것도 PC에 USB를 통해 연결했을 때 무엇을하고 "저장 장치"에 그 변경 알려주는 설정을 찾아, 당신은 아마 2가 또는 3 가지 옵션). 기본적으로 DSLR은 PC에서 실행되는 카메라 자동화 소프트웨어와 통신 할 수있는 모드로 설정됩니다! 해당 설정을 "저장 장치"로 변경하면 Windows는 다른 USB 저장 장치와 마찬가지로 취급하고 드라이브 문자를 할당하며 Delphi 응용 프로그램에서 액세스 할 수 있습니다. 또는 대부분의 DSLR 소유자가하는 일을하고, DSLR에서 카드를 꺼내서 카드 리더기에 넣으십시오.

: 그림의 이름에서 Canon 350D 카메라가 있습니다. 맨 오른쪽 설정 메뉴로 이동하여 통신 옵션을 찾아서 "PC 연결"로 설정하십시오. 기본값은 "Print/PTP"입니다. Print/PTP 프로토콜을 통해 카메라로 작업하고 싶다면 대부분 가능하지만 특정 API를 찾아야합니다.이 모드에서는 카메라의 저장소가 파일 시스템에 매핑되지 않기 때문에 ' 파일과 폴더로 물건을 엽니 다.

+0

고마워, Cosmin.귀하의 게시물에서 용어 PTP로, 나는 (일부) 캐논 카메라 : http://alkenius.no-ip.org/TCamRemote/을 읽을 수 있어야하는 델파이 구성 요소를 찾을 수있었습니다. 나는 그것을 시도하지 않았다. 또한 PTP 장치에 드라이브 문자를 할당 할 수있는 프로그램 인 www.ptpdrive.com을 발견했습니다. 아름다운 웹 사이트이지만 dll을 등록 할 때 설치 프로그램이 충돌합니다. 공급 업체가 이메일에 응답하지 않았습니다 ... 그냥 성공한다면 유망한 프로그램입니다! PS 정보를 얻으려면 Windows 탐색기에서 카메라의 PTP 파일을 탐색 할 수 있어야합니다. IE를 필요로하지 않았습니다. – RobertFrank

+0

오, 실수로 Internet Explorer를 말하고 싶지 않았습니다. Windows Explorer를 말하고 싶었습니다. 나는 그것을 반영하기 위해 나의 대답을 편집 할 것이다. –

+0

www.ptpdrive.com 정보 : DSLR은 USB를 통해 연결될 때 대용량 저장 장치로 표시되도록 DSLR을 구성 할 수 있으므로 DSLR에는 적합하지 않습니다. 왜 사람들은 해킹을 위해 돈을 내야합니까? 카메라에서 설정을 뒤집어서 기본적으로 같은 말 (드라이브 문자)을 얻을 수 있고 해킹이 필요 없습니다. 나는 그 소프트웨어가 PTP 만 지원하는 소수의 카메라 (어떤 카메라가 있는가?)에 있다고 가정한다. –

0

고정 된 드라이브 나 플래시 드라이브가 아닌 특수한 장치이기 때문입니다. 나는 전에이 문제가 많았다. 당신은 어딘가에 그리고 탐색기로 사본을 저장해야합니다.

+0

델파이는 핫 플러그 ​​형 장치를 인식하지 못합니까? – KevinDTimm

+0

>> 델파이는 핫 플러그 ​​형 장치를 인식하지 못합니까? Delphi가 사용하는 일부 * 구성 요소는 TOpenDialog가 카메라를 인식하므로 핫 플러그 ​​가능한 장치를 볼 수 있습니다. – RobertFrank

관련 문제