2009-02-26 7 views
2

나는 최근에 (오늘) 델파이 내 레지스트리에서 meddeling을 시작했습니다. :) 모두 제대로 작동하고 내 사용자 지정 파일 형식이 이제 내 프로그램과 함께 열리지 만 해결할 수없는 두 가지 문제가 있습니다.Windows 레지스트리 파일 연결 메뉴

1) 나는 것 같다 있어야로 확인 거기에 regedit를 사용하여 레지스트리에 보면 내가

reg := TRegistry.Create; 
    reg.RootKey := HKEY_CLASSES_ROOT; 
    reg.LazyWrite := false; 
    reg.OpenKey('*\OpenWithList\EncryptionSystem', true); 
    reg.WriteString('','C:\Program Files\EncryptionSystem\EncryptionSystem.exe "%1"'); 
    reg.CloseKey; 
    reg.free; 

을 추가, 그래서 모든 파일 형식에서 옵션을 "열기"를 원하지만, 잘 때

그래서 나는 다음이

reg.OpenKey('*\shell\Encrypt\command', true); 
    reg.WriteString('','C:\Program Files\EncryptionSystem\EncryptionSystem.exe "%1"'); 
    reg.CloseKey; 

이 모든 파일에 대해 작업을 수행하지만 옵션 ","열기 "와 함께 상단에 적합한 추가 ... 파일을 클릭하고이 아니다으로 열기를 선택 편집하다". 나는 대부분의 프로그램처럼 메뉴 하위 섹션에 나타 내기를 좀 원합니다 ... 쉘렉스와 함께 놀 필요가 있다는 것을 알았지 만 컨텍스트 메뉴 핸들러와 함께 작동하는 구조를 이해하지 못했습니다 ... 어쨌든 나는 레지스트리를 읽음으로써 얻은 모든 것을 배웠다. 나는 shellex의 이름이 ". *"다음에 나왔다는 것을 안다. 그러나 큰 수수께끼 키의 의미에 대해서는 전혀 모른다.

답변

6

"연결 프로그램"메뉴가 해당 레지스트리 키로 채워지지 않은 것처럼 보입니다.

HKCU \ 소프트웨어 \ 마이크로 소프트 \ 윈도우 \ CurrentVersion \ Explorer \ FileExts

내가 목록 것으로 추측 벤처 것 : 다음 위치에서 Explorer에서 저장된 확장 특정 목록에 의해 날조 된 것 Explorer를 사용하는 것이 더 좋지 않은 경우에만 응용 프로그램을 추가합니다. 따라서 자신의 "Open with"목록이 아직 정의되지 않은 파일에 대해서만 사용됩니다.

또한 "Open with"레지스트리 항목이 사용중인 것과 다른 양식으로되어있는 것처럼 보입니다. 키는 EXE 파일의 이름이어야합니다 (예 : ExcryptionSystem.exe). 해당 키의 기본값은 빈 문자열이어야합니다. 나는 내 시스템의 레지스트리에서 볼 수있는 것에 근거하고있다.

Introduction to File AssociationsFile Types MSDN 문서를 살펴보십시오.

+0

참으로 한 .exe 확장자의 추가와 regestry 항목 내의 데이터 링크의 제거를 해결 한 것 같다 ...에있어 티가 어디 있었는지 말해 줬어. 나 .... – Arthur

1

레지스트리를 보면 라인을 변경해야하는 것처럼 보입니다.

reg.OpenKey('*\OpenWithList\EncryptionSystem.exe', true); //note exe 
reg.WriteString('','C:\Program Files\EncryptionSystem\EncryptionSystem.exe "%1"') 

확인이 첫 번째로

reg.OpenKey('*\OpenWithList\EncryptionSystem', true); 
reg.WriteString('','C:\Program Files\EncryptionSystem\EncryptionSystem.exe "%1"') 

에서

.

0

내 W7P에서는 참조되지 않습니다. 대신 그들은 롤 i는 데이터 링크 방법이었다로 잘 모릅니다 ,,

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts 
관련 문제