2014-09-26 7 views
0

델파이 앱에서 맞춤 확장 기능을 자동으로 열 수 있습니까? 텍스트 파일을로드하지만 다른 확장명을 사용하는 응용 프로그램 을 만들려고합니다. 예 : Text.DZ 내가 원하는 것은 .DZ 확장자로 파일을 클릭하면 내 앱을 자동으로 열고 memo1.lines.text 안에 텍스트를로드합니다.Delphi - 등록 방법 자동 열기를위한 파일 확장자?

새로운 맞춤 확장 프로그램을 등록해야한다는 것을 알고 있지만 어떻게해야하는지 잘 모르며 내 앱에 텍스트를로드합니다.

또한 훌륭한 코드 일 수있는 소스 코드 예제를 포함 할 수 있다면.

도움이 될 것입니다. 그리고 나는 나의 새롭고 나쁜 영어 설명을 유감스럽게 생각하지만 너희들이 나를 이해하기를 바란다. (^ - ^) /.

+0

참고 : 그 대답은 시스템 전반에 걸쳐이를 설정하려는 경우 어떻게해야 할 지 간단히 설명합니다. – hvd

+0

OP의 질문에 반드시 답할 필요는 없습니다. 자신의 시스템에서 실행중인 앱에 대해이 작업을 수행 할 것인지 또는 제품 용도로 사용할지 여부는 분명하지 않습니다. 두 가지 솔루션이 있습니다. –

답변

1

어떻게하면 커프를 떠올리지는 않지만 프로그래밍 방식으로 할 수있는 방법이 있습니다.

그런데, 개인적인 용도로만 사용하고 싶다면 다른 사람에게 배포 할 소프트웨어가 아니라 가장 쉬운 방법은 Windows 탐색기를 사용하는 것입니다. 데이터 파일을 클릭하십시오. 원하는 항목을 마우스 오른쪽 버튼으로 클릭하고 연결 프로그램 -> ...을 선택하면 하단의 기타 ... 옵션을 선택해야 할 수 있습니다. 그러면 앱을 선택할 수있는 대화 상자가 나타납니다. "Make Default"나 "Always With This This"같은 것을 나타내는 체크 박스가 있어야합니다. 상자가 선택되어 있는지 확인하십시오. 그런 다음 확인을 몇 번 클릭하면 경주가 끝납니다.

하지만 명령 줄에서 파일 이름을 읽도록 앱을 설정해야합니다. 당신은 이것을 위해 ParamStr과 ParamCount를 사용합니다.

for i := 0 to ParamCount do 
    ShowMessage('Parameter '+IntToStr(i)+' = '+ParamStr(i)); 

데이터 파일을 두 번 클릭하면 응용 프로그램이 열리고이 파일 이름이 ParamStr (1)로 전달됩니다. 당신이 그것을 얻을 때, 단순히 같은 것을 할 :

memo1.lines.LoadFromFile(ParamStr(1)); 

사용이 출발점 (그냥 복사하여 붙여 넣을 경우 컴파일되지 않습니다!)과 같은 :

procedure TMyForm234:FormCreate(blah blah) 
begin 
    if ParamCount > 0 then 
    theMemo.Lines.LoadFromFile(ParamStr(1)); 
end; 
+0

감사합니다. David bro! 하지만 코드는 어디에 두어야합니까? onformshow 또는 무엇? Nd 나는 파일을로드하는 동안 표시 할 메시지를 원하지 않습니다. D 도움에 대한 감사의 친구 – M0HX

+0

David Schwartz 그래서이 코드를 자동으로 실행하거나 어떤 이벤트에 넣어야합니까? 죄송합니다. 나는 멍청하고 죄송합니다. stopid beginner; c – M0HX

+0

여기 사람들이 수십억 명의 사람들에게 배포해야하는 제작 소프트웨어 용 솔루션을 찾고 있다고 가정합니다. 당신이이 질문이 당신의 개인적인 필요만을위한 것이 든, 당신이 대중에게 배포하는 프로그램을위한 것이 든 사람들에게 분명히 해줄 수 있다면 정말 대단 할 것입니다. –