|
System.Diagnostics.Process.Start(); 무엇을 할 수 있을까요? 주로 다음과 같은 기능을 수행합니다: 1. 링크 URL (팝업 창)을 엽니다. 2. 파일 디렉터리를 찾아 엽니다. 3. 시스템 내 "제어판" 등과 같은 특수 폴더를 엽니다. 그렇다면 이 기능들은 어떻게 구현되나요? 응용 분야에 대해 이야기하기 전에, Process.Star()의 구성 방법을 살펴보겠습니다.
이름 | 설명 | | 프로세스. 시작 () | 이 프로세스 구성 요소를 시작(또는 재사용)시작 정보속성은 프로세스 자원을 지정하고 그 구성 요소와 연관시킵니다. | | Process.Start (ProcessStartInfo) | 프로세스 시작 정보(예: 시작할 프로세스의 파일명)를 포함하는 매개변수로 지정된 프로세스 자원을 시작하고, 그 자원을 새로운 프로세스 컴포넌트와 연관시킵니다. | | 프로세스.시작 (문자열) | 명칭별문서 또는 신청 파일의 이름입니다프로세스 리소스를 시작하고 그 리소스를 새로운 프로세스 컴포넌트와 연관시키는 것. | | Process.Start (문자열, 문자열) | 명칭별애플리케이션의 이름과 명령줄 인자 집합프로세스 리소스를 시작하고 그 리소스를 새로운 프로세스 컴포넌트와 연관시키는 것입니다. | | Process.Start (문자열, 문자열, SecureString, 문자열) | 명칭별앱 이름, 사용자 이름, 비밀번호, 도메인프로세스 리소스를 시작하고 그 리소스를 새로운 프로세스 컴포넌트와 연관시키는 것입니다. | | Process.Start (String, String, String, SecureString, String) | 명칭별애플리케이션 이름과 명령줄 인수 집합, 사용자 이름, 비밀번호, 도메인프로세스 리소스를 시작하고 그 리소스를 새로운 프로세스 컴포넌트와 연관시키는 것입니다. |
(1) 공공불시작 ()
System.Diagnostics.Process process = new System.Diagnostics.Process(); 과정. StartInfo.FileName = "iexplore.exe"; 인터넷 익스플로러는 교체 가능합니다
과정. StartInfo.Arguments = "http://www.baidu.com"; 과정. Start();
(2) 공공 정적과정시작 (프로세스 시작정보startInfo)
System.Diagnostics.ProcessStartInfo processStartInfo = new System.Diagnostics.ProcessStartInfo(); processStartInfo.FileName = "explorer.exe"; 익스플로러
processStartInfo.Arguments = @"D:\"; System.Diagnostics.Process.Start(processStartInfo);
(3) 공공정적과정Start (stringfileName) System.Diagnostics.Process.Start(@"D:\Program Files\Tencent\QQ\Bin\QQ.exe"); 파일 호출을 직접 열어
(4) 프로세스. 시작 (문자열)파일명, 문자열 인수) System.Diagnostics.Process.Start("explorer.exe", "D:\\Readme.txt"); 파일을 직접 열어Readme.txt
위의 예시는 process.start()로 웹사이트를 여는 방법이며, 이제 processs.star()를 사용해 파일을 찾는 방법에 대해 이야기해 보겠습니다. 이 현지화 방법은 단축키 {explorer /select"의 검색 대상과 유사하며, "D:\Program Files\Tencent\QQ\Bin\QQ.exe"과 유사합니다.
문자열 경로 = @"D:\Program Files\Tencent\QQ\Bin\QQ.exe";
System.Diagnostics.Process.Start("explorer.exe", "/select," +path); D:\Program Files\Tencent\QQ\Bin 파일 디렉터리를 찾아 열고 QQ.exe
참고: /select 뒤에는 쉼표(,)가 있습니다.
다음으로, rundll32.exe을 호출하여 시스템별 파일을 여는 방법에 대해 이야기하고, rundll32.exe의 기능과 기능을 간단히 소개해 보겠습니다. 이름에서 알 수 있듯이, rundll32는 "실행 중인 32비트 DLL 파일"로, 실행 DLL 파일 내의 내부 함수를 포함해 Windows 32비트 동적 링크 라이브러리를 명령줄 형태로 호출할 수 있습니다. 마찬가지로, rundll.exe "16비트 dll 파일을 실행"하여 16비트 동적 링크 라이브러리를 호출합니다. 우리는 명령어를 실행하여 일부 기능을 수행합니다rundll32.exe. 예를 들어: System.Diagnostics.Process.Start("rundll32.exe","user.exe,restartwindows"); 시스템 재시작 명령어
rundll32 command 백과사전
명령줄 :rundll32.exe user.exe, restartwindows 기능: 시스템 재부팅
명령줄 :rundll32.exe user.exe, exitwindows 기능: 시스템 종료
명령줄: rundll32.exe shell32.dll, Control_RunDLL 기능: 디스플레이 제어판
명령줄: rundll32.exe shell32.dll,Control_RunDLL access.cpl,,1 기능: "제어판 - 접근성 옵션 - 키보드" 옵션 창 표시
명령줄: rundll32.exe shell32.dll, Control_RunDLL access.cpl, , 2 기능: "제어판 - 접근성 옵션 - 사운드" 옵션 창 표시
명령줄: rundll32.exe shell32.dll, Control_RunDLL access.cpl, 3 기능: "제어판 - 접근성 옵션 - 디스플레이" 옵션 창 표시
명령줄: rundll32.exe shell32.dll, Control_RunDLL access.cpl, 4 기능: "제어판 - 접근성 옵션 - 마우스" 옵션 창 표시
명령줄: rundll32.exe shell32.dll, Control_RunDLL access.cpl, 5 기능: "제어판 - 접근성 옵션 - 전통형" 옵션 창 표시
명령줄: rundll32.exe shell32.dll,Control_RunDLL sysdm.cpl @1 기능: 제어판을 실행하고 - 새 하드웨어 마법사 추가.
명령줄: rundll32.exe shell32.dll,SHHelpShortcuts_RunDLL AddPrinter 기능: 제어판 실행 - 새 프린터 마법사 추가.
명령줄: rundll32.exe shell32.dll, Control_RunDLL appwiz.cpl, , 1 기능: 제어판 - 프로그램 추가/제거 패널 표시.
명령줄: rundll32.exe shell32.dll, Control_RunDLL appwiz.cpl, , 1
기능: "제어판 - 프로그램 추가/제거 - 설치/제거" 패널 표시.
명령줄: rundll32.exe shell32.dll, Control_RunDLL appwiz.cpl, , 2 기능: "제어판 - 프로그램 추가/제거 - Windows 설치" 패널을 표시합니다.
명령줄: rundll32.exe shell32.dll,Control_RunDLL appwiz.cpl,3 기능: "제어판 - 프로그램 추가/제거 - 시작 디스크" 패널을 표시합니다.
명령줄: rundll32.exe syncui.dll, Briefcase_Create 기능: 데스크톱에 새로운 "내 서류가방"을 만듭니다.
명령줄: rundll32.exe diskcopy.dll, DiskCopyRunDll 기능: 복사 플로피 디스크 창 표시
명령줄: rundll32.exe apwiz.cpl, NewLinkHere %1 기능: "단축키 생성" 대화상자를 표시하며, 생성된 단축키의 위치는 %1 매개변수에 의해 결정됩니다.
명령줄: rundll32.exe shell32.dll,Control_RunDLL timedate.cpl,0 기능: 날짜 및 시간 옵션 창을 표시합니다.
명령줄: rundll32.exe shell32.dll, Control_RunDLL timedate.cpl, , 1 기능: 시간대 옵션 창 표시.
명령줄: rundll32.exe rnaui.dll, RnaDial [다이얼업 연결 이름] 기능: 다이얼업 연결을 위한 다이얼링 창을 표시합니다. 이미 연결을 다이얼했다면, 창이 현재 연결 상태를 보여줍니다.
명령줄: rundll32.exe rnaui.dll, RnaWizard 기능: 새로운 다이얼업 연결 마법사 창을 표시합니다.
명령줄: rundll32.exe shell32.dll,Control_RunDLL desk.cpl,0 기능: "속성 - 배경 표시" 옵션 창을 표시합니다.
명령줄: rundll32.exe shell32.dll, Control_RunDLL desk.cpl, , 1 기능: "디스플레이 속성 - 화면 보호" 옵션 창을 표시합니다.
명령줄: rundll32.exe shell32.dll,Control_RunDLL desk.cpl,,2 기능: "속성 표시 - 외관" 옵션 창을 표시합니다.
명령줄: rundll32.exe shell32.dll, Control_RunDLL desk.cpl, 3 기능: 속성 표시 - 속성 옵션 창을 표시합니다.
명령줄: rundll32.exe shell32.dll, SHHelpShortcuts_RunDLL FontsFolder 기능: Windows Fonts 폴더를 표시합니다.
명령줄: rundll32.exe shell32.dll,Control_RunDLL main.cpl @3 기능: Windows Fonts 폴더도 표시합니다.
명령줄: rundll32.exe shell32.dll, SHFormatDrive 기능: 플로피 디스크 포맷 대화상자 표시.
명령줄: rundll32.exe shell32.dll,Control_RunDLL joy.cpl,0 기능: "제어판 - 게임 컨트롤러 - 일반" 옵션 창을 표시합니다.
명령줄: rundll32.exe shell32.dll,Control_RunDLL joy.cpl,,1 기능: "제어판 - 게임 컨트롤러 - 고급" 옵션 창을 표시합니다.
명령줄: rundll32.exe mshtml.dll, PrintHTML (HTML 문서) 기능: HTML 문서 인쇄.
명령줄: rundll32.exe shell32.dll, Control_RunDLL mlcfg32.cpl 기능: Microsoft Exchange 일반 옵션 창을 표시합니다.
명령줄: rundll32.exe shell32.dll,Control_RunDLL main.cpl @0 기능: 제어판 - 마우스 옵션 표시.
명령줄: rundll32.exe shell32.dll,Control_RunDLL main.cpl @1 기능: "제어판 - 키보드 속성 - 속도" 옵션 창을 표시합니다.
명령줄: rundll32.exe shell32.dll,Control_RunDLL main.cpl @1,,1 기능: "제어판 - 키보드 속성 - 언어" 옵션 창을 표시합니다.
명령줄: rundll32.exe shell32.dll,Control_RunDLL main.cpl @2 기능: Windows 프린터 폴더를 표시합니다.
명령줄: rundll32.exe shell32.dll,Control_RunDLL main.cpl @4 기능: "제어판 - 입력 방법 속성 - 입력 방법" 옵션 창을 표시합니다.
명령줄: rundll32.exe shell32.dll, Control_RunDLL modem.cpl, 추가하기 함수: 새 모뎀 추가 마법사를 실행합니다.
명령줄: rundll32.exe shell32.dll,Control_RunDLL mmsys.cpl,0 기능: "Control Panel - Multimedia Properties - Audio" 속성 페이지를 표시합니다.
명령줄: rundll32.exe shell32.dll,Control_RunDLL mmsys.cpl,,1 기능: "제어판 - 멀티미디어 속성 - 비디오" 속성 페이지를 표시합니다.
명령줄: rundll32.exe shell32.dll, Control_RunDLL mmsys.cpl, , 2 기능: "제어판 - 멀티미디어 속성 - MIDI" 속성 페이지를 표시합니다.
명령줄: rundll32.exe shell32.dll, Control_RunDLL mmsys.cpl, 3 기능: "Control Panel - Multimedia Properties - CD Music" 속성 페이지를 표시합니다.
명령줄: rundll32.exe shell32.dll, Control_RunDLL mmsys.cpl, 4 기능: 제어판 - 멀티미디어 속성 - 장치 속성 페이지를 표시합니다.
명령줄: rundll32.exe shell32.dll,Control_RunDLL mmsys.cpl @1 기능: "제어판 - 사운드" 옵션 창을 표시합니다.
명령줄: rundll32.exe shell32.dll, Control_RunDLL netcpl.cpl 기능: 제어판 - 네트워크 옵션 창 표시.
명령줄: rundll32.exe shell32.dll, Control_RunDLL odbccp32.cpl 기능: ODBC32 데이터 관리 옵션 창을 표시합니다.
명령줄: rundll32.exe shell32.dll,OpenAs_RunDLL {drive:/path/filename} 기능: 지정된 파일(drive:/path/filename)에 대해 열기 대화상자를 표시합니다.
명령줄: rundll32.exe shell32.dll, Control_RunDLL password.cpl 기능: "제어판 - 비밀번호" 옵션 창을 표시합니다.
명령줄: rundll32.exe shell32.dll, Control_RunDLL powercfg.cpl 기능: "제어판 - 전원 관리 속성" 옵션 창을 표시합니다.
명령줄: rundll32.exe shell32.dll,SHHelpShortcuts_RunDLL PrintersFolder 기능: Windows 프린터 폴더를 표시합니다. (같은 rundll32.exe shell32.dll, Control_RunDLL main.cpl @2)
명령줄: rundll32.exe shell32.dll,Control_RunDLL intl.cpl,0 기능: "제어 패널 - 로칼 속성 - 로칼" 옵션 창을 표시합니다.
명령줄: rundll32.exe shell32.dll, Control_RunDLL intl.cpl, , 1 기능: "제어 패널 - 로컬 속성 - 숫자" 옵션 창을 표시합니다.
명령줄: rundll32.exe shell32.dll, Control_RunDLL intl.cpl, , 2 기능: "컨트롤 패널 - 로컬 속성 - 통화" 옵션 창을 표시합니다.
명령줄: rundll32.exe shell32.dll, Control_RunDLL intl.cpl, 3 기능: "제어판 - 로컬 속성 - 시간" 옵션 창을 표시합니다.
명령줄: rundll32.exe shell32.dll, Control_RunDLL intl.cpl, 4 기능: "제어 패널 - 로컬 속성 - 날짜" 옵션 창을 표시합니다.
명령줄: rundll32.exe desk.cpl, InstallScreenSaver [스크린 보호기 파일명] 기능: 지정된 화면 보호 파일을 Windows 화면 보호기로 설정하고 화면 보호 속성 창을 표시합니다.
명령줄: rundll32.exe shell32.dll,Control_RunDLL sysdm.cpl,0 기능: "제어판 - 시스템 속성 - 전통" 속성 창을 표시합니다.
명령줄: rundll32.exe shell32.dll,Control_RunDLL sysdm.cpl,,1 기능: "제어판 - 시스템 속성 - 장치 관리자" 속성 창을 표시합니다.
명령줄: rundll32.exe shell32.dll, Control_RunDLL sysdm.cpl, 2 기능: "제어판 - 시스템 속성 - 하드웨어 구성 파일" 속성 창을 표시합니다.
명령줄: rundll32.exe shell32.dll, Control_RunDLL sysdm.cpl, 3 기능: "Control Panel - System Properties - Performance" 속성 창을 표시합니다.
명령줄: rundll32.exe shell32.dll, Control_RunDLL telephon.cpl 기능: 다이얼 속성 옵션 창 표시
명령줄: rundll32.exe shell32.dll, Control_RunDLL themes.cpl 기능: 데스크톱 테마 옵션 패널 표시
명령줄: rundll32.exe shell32.dll, Control_RunDLL firewall.cpl 기능: Windows 방화벽 패널 표시
명령줄: rundll32.exe shell32.dll, Control_RunDLL NetSetup.cpl, @0, WNSW 기능: "무선 네트워크 설정" 패널 표시 더 많은 명령어는 여기에서 다운로드할 수 있습니다:http://download.csdn.net/detail/czw2010/4530206
System.Diagnostics.Process.Start("notepad.exe"); -- 노트패드 열어
System.Diagnostics.Process.Start("calc.exe "); -- 계산기 열어 System.Diagnostics.Process.Start("regedit.exe "); -- 등록부 열어
System.Diagnostics.Process.Start("mspaint.exe "); -- 설계도를 열어 System.Diagnostics.Process.Start("write.exe "); -- 오픈 워드패드
System.Diagnostics.Process.Start("mplayer2.exe "); --플레이어를 열어
System.Diagnostics.Process.Start("taskmgr.exe "); --작업 관리자 열기 System.Diagnostics.Process.Start("eventvwr.exe "); --이벤트 뷰어 열기 System.Diagnostics.Process.Start("winmsd.exe "); --오픈 시스템 정보 System.Diagnostics.Process.Start("winver.exe "); --Open Windows 버전 정보 System.Diagnostics.Process.Start("mailto: "+ address); -- 이메일 보내세요
shutdown.exe: 매개변수: -s 종료 -r 재시작 -f 강제 -t 시간 -a 종료 취소 -l 로그아웃 -i 표시 사용자 인터페이스
System.Diagnostics.Process.Start("shutdown.exe","-r"); -- 컴퓨터를 종료하고 재시작하세요 System.Diagnostics.Process.Start("shutdown.exe","-s -f"); -- 컴퓨터 종료 System.Diagnostics.Process.Start("shutdown.exe","-s -f 30"); -- 30초 후에는 컴퓨터를 종료하세요 System.Diagnostics.Process.Start("shutdown.exe","-l"); --컴퓨터에서 로그아웃해 System.Diagnostics.Process.Start("shutdown.exe","-a"); --컴퓨터 종료 되돌리기
특별 폴더회원 열거:
회원 이름 | 설명 | | ApplicationData | 현재 로밍 중인 사용자를 위한 애플리케이션별 데이터를 위한 공개 저장소 역할을 합니다. 로밍 사용자는 네트워크의 여러 컴퓨터에서 작업합니다. 로밍 중인 사용자의 프로필은 웹 서버에 저장되며, 로그인 시 시스템에 로드됩니다. | | CommonApplicationData | 디렉터리는 모든 사용자가 사용하는 애플리케이션별 데이터를 위한 공개 저장소 역할을 합니다. | | 공통 프로그램파일 | 과거에는 애플리케이션 간에 공유되는 컴포넌트 디렉터리가 있었습니다. | | 쿠키 | 인터넷 쿠키의 공개 저장소로 사용되는 디렉터리입니다. | | 데스크톱 | 물리적 파일 시스템 위치가 아니라 논리적인 데스크톱입니다. | | 데스크톱디렉토리 | 데스크톱에 파일 객체를 물리적으로 저장하는 디렉터리입니다. 이 디렉터리는 가상 폴더인 데스크톱 폴더와 혼동해서는 안 됩니다. | | 좋아하는 선수들 | 사용자 즐겨찾기 항목의 공개 저장소 역할을 하는 디렉터리입니다. | | 역사 | 인터넷 역사 항목의 공개 저장소 역할을 하는 디렉터리입니다. | | 인터넷캐시 | 인터넷에서 임시 파일을 위한 공개 저장소로 사용되는 디렉터리입니다. | | LocalApplicationData | 디렉터리는 현재 비로밍 사용자가 사용하는 애플리케이션별 데이터를 위한 공개 저장소 역할을 합니다. | | 마이컴퓨터 | 내 컴퓨터 폴더.주석 | My Computer 폴더에는 경로가 정의되어 있지 않기 때문에, MyComputer 상수는 항상 빈 문자열("")을 생성합니다. |
| | 마이 문서 | 내 컴퓨터 폴더. | | 마이뮤직 | "내 음악" 폴더. | | 마이픽처스 | "내 사진" 폴더. | | 개인사 | 문서의 공개 저장소로 사용되는 디렉터리입니다. | | 프로그램파일 | 프로그램 파일 디렉터리. | | 프로그램 | 사용자 프로그램 그룹 디렉터리를 포함하고 있습니다. | | 최근 | 사용자가 가장 최근에 사용한 문서들을 담은 목차입니다. | | SendTo | Send 메뉴 항목이 포함된 목차입니다. | | 시작 메뉴 | 시작 메뉴 항목이 포함된 목차입니다. | | 창업 | 사용자의 시작 그룹에 해당하는 디렉터리입니다. 이 프로그램들은 사용자가 로그인하거나 Windows NT 이상을 부팅하거나 Windows 98을 시작할 때마다 실행됩니다. | | 시스템 | "시스템" 디렉터리. | | 템플릿 | 문서 템플릿의 공개 저장소 역할을 하는 디렉터리입니다. |
Environment.GetFolderPath(Environment.SpecialFolder.XXXXX); 시스템 내 특정 폴더의 특정 경로를 쉽게 얻고, Process.Start() 메서드로 폴더를 열 수 있습니다. 예를 들어:
System.Diagnostics.Process.Start(Environment.GetFolderPath(Environment.SpecialFolder.System)); 시스템 폴더(System32 폴더)를 열어보세요.
[System.Runtime.InteropServices.DllImportAttribute("user32.dll")] private static extern int FindWindow(문자열 ClassName, 문자열 WindowName); [System.Runtime.InteropServices.DllImport("user32.dll")] private static extern int ShowWindow(int 핸들, int cmdShow); [System.Runtime.InteropServices.DllImport("winmm.dll", EntryPoint = "mciSendString", CharSet = System.Runtime.InteropServices.CharSet.Auto)] private static extern int mciSendString(string lpstrCommand, string lpstrReturnstring, int uReturnLength, int hwndCallback);
개인 콘센트 정SW_HIDE = 0; API 매개변수는 숨겨진 창을 나타냅니다 사설 콘센트 지능 SW_SHOW = 5; API 매개변수는 창이 현재 크기와 위치로 표시됨을 나타냅니다 ShowWindow(FindWindow("Shell_TrayWnd", null), SW_HIDE); -- 숨겨진 작업 표시줄 숨기기 ShowWindow(FindWindow("Shell_TrayWnd", null), SW_SHOW); -- 작업 표시줄 표시
mciSendString("set CDAudio door open", null, 127, 0); -- 광학 드라이브를 팝업해 mciSendString("set CDAudio door closed", null, 127, 0); --광학 드라이브 꺼
|