c++ shellexecute 예제

ShellExecute()를 사용하여 C++의 기본 브라우저를 URL로 열려고 하지만 mocrosoft 사이트에 예제를 사용하여이 작업을 수행 할 수는 없습니다. Windows 셸은 여러 가지 방법으로 이러한 연결을 사용합니다. 한 가지 방법은 윈도우 탐색기입니다. 탐색기에서 파일 이름을 두 번 클릭하면 Windows는 파일 연결 목록에서 파일 이름의 확장명을 찾습니다. 해당 파일에 대한 연결이 발견되면 연결된 응용 프로그램이 실행되고 두 번 클릭된 문서가 해당 응용 프로그램에 로드됩니다. 예를 들어 TXT 확장자가 있는 파일을 두 번 클릭하면 Windows에서 메모장을 시작하고 텍스트 파일을 로드합니다(TXT 확장자가 메모장 이 아닌 다른 프로그램과 연결되지 않았다고 가정). 응용 프로그램은 먼저 Windows 디렉터리PIDL을 검색하고 첫 번째 .bmp 파일을 찾을 때까지 내용을 등록합니다. 이전 예제와 달리 IShellFolder:GetDisplayNameOf는 표시 이름 대신 파일의 구문 분석 이름을 검색하는 데 사용됩니다. 이 폴더는 파일 시스템 폴더이므로 구문 분석 이름은 ShellExecuteEx에 필요한 경로입니다. ShellExecute를 사용하면 특정 파일 형식에 등록된 프로그램의 이름이나 위치를 알 필요가 없습니다. Windows는 당신을 위해 그것을 처리합니다. 예를 들어. PDF 파일, 독자, Acrobat 또는 다른 PDF 읽기 응용 프로그램이 설치되어있는 한, 윈도우는 그것을 시작하고 당신을 위해 PDF를로드합니다.

다음 예제에서는 WinExec을 사용하여 Windows 메모장을 실행하는 것을 보여 줍니다. 먼저 ShellExecute를 사용하여 외부 응용 프로그램을 실행하려는 상황을 살펴보겠습니다. 이 경우 코드는 다음과 같이 보일 수 있습니다: Type: LPCTSTR A 는 지정된 동사를 실행할 파일 또는 개체를 지정하는 null-terminated 문자열에 대한 포인터입니다. Shell 네임스페이스 개체를 지정하려면 정규화된 구문 분석 이름을 전달합니다. 모든 동사가 모든 개체에서 지원되는 것은 아닙니다. 예를 들어 모든 문서 형식이 „인쇄“ 동사를 지원하는 것은 아닙니다. 상대 경로가 lpDirectory 매개 변수에 사용되는 경우 lpFile에 대한 상대 경로를 사용하지 마십시오.

Dieser Eintrag wurde veröffentlicht in Allgemein. Lesezeichen auf den Permanentlink.