레지스트리에
D:Program Filesmyprogrammyprogram.exe %1
이렇게 써서 탐색기메뉴에서 파일을 파라미터값으로 받아서 실행되는데..
긴파일 이름을 가진 화일 그러니깐..
f:blue streak.avi 이런걸 f:bluest~2.avi
이렇게 받습니다.. ㅜ.ㅜ
파일명을 받을땐 filename := System.ParamStr(1);
이렇게 받고요... filename은 string형식입니다..
왜 예전 도스 형식 파일명으로 전달전달되는지 모르겠습니다.
원래 이런식으로 전달 되는게 맞는건가요?
그렇다면 두번째 질문..
프로그램 실행시 실행 디렉토리를 바꾸는 방법을 알고싶습니다.
그러니깐.. 제프로그램이 실행되고 나서 파라미터 값으로 넘겨받은 디렉토리로 옮기는 방법..??
솔직히 말씀드리면 제 프로그램은 동영상을 제생시켜주는 건데..
파라미터 값이 저렇게 오는 바람에
smi화일을 찾지를 못합니다.. 같은 화일명에 확장자만 smi형식인걸 검색해서 넣어 줘 봐도.. 않되고요..
근데.. 짧은 화일 명은 되더군요..
무엇이 문제인지 잘 모르겠습니다.
ㅜ.ㅜ
아..! 그리고 레지스트리 추가할때
avifile, movfile... 이런거만 추가해 주었습니다.
다른 건 않했거든요.. 혹시 다른 부분도 추가해 주어야 하는 건가요?
이렇게 하니깐 탐색기 메뉴에 뜨긴 뜨던데요.. ???
AVIFileshell내 프로그램으로 재생(&N)command
{InstallDir}myprogram.exe %1