2009-05-02 2 views
0

저는 초보자 닷넷 2.0 및 3.5 개발자입니다. Vista에서 파일을 마우스 오른쪽 버튼으로 클릭하면 컨텍스트 메뉴를 만드는 응용 프로그램을 만들고 싶습니다. 마우스 오른쪽 버튼을 클릭하면 나머지는 알 수 있지만 Vista API에 액세스하는 방법을 알지 못합니다.Vista에서 파일 만들기 -> 마우스 오른쪽 버튼 클릭 상황에 맞는 메뉴로 시작하겠습니다.

FOLLOW-UP은 :

나는 정보의 일부를 읽고 것처럼 사람들이 함께 응답 한 것을, 나는 과잉 여기 셸 확장으로 가고 있음을 발견했다. 필자는 앱을 호출하고 파일 이름을 매개 변수로 전달하면이 프로젝트를 훨씬 간단하게 유지할 수 있다고 생각합니다. 특정 확장명의 파일을 마우스 오른쪽 버튼으로 클릭하면 탐색기의 컨텍스트 메뉴에 내 앱이 표시됩니다. 어떻게해야합니까?

+0

(KBCafe의 PDF는 간단한 HTML 링크를 찾을 수 없습니다). 당신이 이미 그것을 보았다면 확실하지 않습니다. –

답변

1

소리가 들리지 않을 위험이 있으므로 .NET 2.0 또는 3.5에서이 문제를 권장합니다. Brian이 당신이 구현하려고하는 것은 쉘 확장이라고 말했습니다. 이것들은 Vista 쉘이로드하는 라이브러리로서 구현됩니다.

.Net 2.0에서 이러한 기능을 구현하는 방법에 대한 지침을 제공하는 웹 관련 자습서가 몇 권이나 있지만 여기에 몇 가지 언급이 있습니다. Vista 쉘에 .Net 쉘 확장을로드하게 만들면 쉘 확장에 필요한 전체 .Net CLR을로드해야합니다. 이 점을 더욱 악화시키는 이유 중 하나는 .Net CLR의 한 버전 만 한 프로세스에서로드 할 수 있다는 것입니다. 따라서 .Net 1.0 CLR이 필요한 셸 확장이 있고 Vista가이 파일을로드 한 경우 셸 확장에 필요한 2.0 CLR을로드 할 수 없습니다.

여기에는 이미 Stack Overflow articles이 있습니다.

implementing a shell extension in unmanaged C++에 대한 일부 정보

내 대답에 PDF 그래서 난 그에 대한 새로운 답을 만들거야 후속에 대한 답변을 제공해야

0

쓰려고하는 것을 "셸 확장"이라고합니다. 나는 당신에게 간단한 예제를 줄 수는 없지만, 이제는 Google에서 자습서를 검색하여 더 많은 진전을 이룰 수 있다는 것을 알게되었습니다.

0

모든 버전의 Windows에서 탐색기의 셸 확장을 작성하는 데 관리되는 코드를 사용할 수 없다는 것이 확실합니다. 따라서 하나를 작성하려면 C++와 같은 "전통적인"언어로 작성해야합니다.

관련 문제