이전에 Windows 레지스트리에 특정 MIME 유형을 등록하여 로컬로 설치된 도우미 응용 프로그램을 시작할 수있었습니다. 이를 통해 사용자는 내부 브라우저 응용 프로그램의 현재 설치 링크를 한 번 클릭 할 수 있습니다. 이것은 Internet Explorer 5 (대부분의 경우)와 Firefox에서 작동했지만 Internet Explorer 7에서는 작동하지 않습니다.등록 된 mime 도우미 응용 프로그램 시작
내 shell/open/command에 전달 된 파일 이름이 다운로드 한 설치 패키지의 전체 실제 경로가 아닙니다. . 내가 IE에 의해 건네하고 경로 매개 변수는 FileExists()
를 호출 할 때 또는 TFileStream
객체를 생성 할 때이 불행하게도 실제 파일로 해결되지 않는
"C:\Document and Settings\chq-tomc\Local Settings\Temporary Internet Files\
EIPortal_DEV_2_0_5_4[1].expd"
입니다.
물리적 경로는 절대 경로
로 표현 될 것"Content.IE5\ALBKHO3Q"
의 임시 인터넷 파일의 인터넷 익스플로러 숨겨진 캐시 하위 디렉토리가 누락
"C:\Document and Settings\chq-tomc\Local Settings\Temporary Internet Files\
Content.IE5\ALBKHO3Q\EIPortal_DEV_2_0_5_4[1].expd"
예, 하위 디렉토리는 무작위로 IE에 의해 것을 생성 IE가 도우미 응용 프로그램의 전체 경로를 전달하는 한 걱정할 필요가 없습니다. 불행하게도 그렇게하지 않습니다.
mime 도우미 응용 프로그램 설치는 문제가되지 않습니다. 전 세계적으로 10,000 명이 넘는 모든 사용자를 대상으로 글로벌 로그인 스크립트로 설치/업데이트됩니다. mime 도우미는 사용자가 데스크톱 브라우저 응용 프로그램 설치 링크가있는 내부 웹 페이지를 클릭 할 때만 호출됩니다. 이 설치는 mime-type "application/x-expeditors"
과 함께 제공됩니다. ".expd"
/"application/x-expeditors"
mime 유형의 등록은 다음과 같습니다.
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\.expd]
@="ExpeditorsInstaller"
"Content Type"="application/x-expeditors"
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\ExpeditorsInstaller]
"EditFlags"=hex:00,00,01,00
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\ExpeditorsInstaller\shell]
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\ExpeditorsInstaller\shell\open]
@=""
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\ExpeditorsInstaller\shell\open\command]
@="\"C:\\projects\\desktop2\\WebInstaller\\WebInstaller.exe\" \"%1\""
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\MIME\Database\Content Type\application/x-expeditors]
"Extension"=".expd"
나는 사용자의 IE 캐시 항목을 모두 열거 고려했지만 나는 그들 모두를 조사하기 위해 취할 수 시간 또는 나는 내가 현재 항목 전에 이전 캐시 항목을 찾는 끝날 수 있다는 우려된다 찾고. 그러나 대괄호로 묶은 파일 이름 접미사 "[n]"
은 고유 한 키일 수 있습니다.
나는 wininet 메서드 GetUrlCacheEntryInfo
을 시도했지만 인터넷 경로가 아닌 IE에 의해 전달 된 가상 경로가 필요합니다.
내 희망은 가상 경로가 주어진 물리적 경로를 되돌려주는 쉘 기능입니다.