Windows 9x를 자주 사용하는 친구들은 Rundll32.exe와 Rundll.exe 두 파일에 대해 잘 알고 있을 텐데요. 그러나 이 두 프로그램의 기능은 원래 Microsoft 내에서만 사용하도록 제한되어 있었기 때문에 실제로 사용법을 아는 친구는 많지 않을 것입니다. 그들을. . 글쎄요, 아직 모르신다면 알려드릴게요.
먼저 작은 실험을 해보세요(실행 중인 프로그램의 결과를 미리 저장해 두십시오. 그렇지 않으면...): "시작-프로그램-Ms-Dos 모드"를 클릭하고 Dos 창으로 들어간 다음 "rundll32.dll"을 입력합니다. exeuser.exe,restartwindows"를 입력한 다음 Enter 키를 누릅니다. 이때 컴퓨터가 다시 시작되는 것을 볼 수 있습니다! 흥미롭지 않나요?
물론 Rundll의 기능은 단순히 컴퓨터를 다시 시작하는 것 이상입니다. 실제로 Rundll은 이름에서 알 수 있듯이 Dll을 실행합니다. 그 기능은 명령줄을 통해 Windows 동적 링크 라이브러리를 호출하는 것입니다. Rundll32.exe와 Rundll.exe의 차이점은 전자가 32비트 링크 라이브러리를 호출한다는 것입니다. 후자는 16비트 링크 라이브러리에 적용되며 해당 명령 형식은 다음과 같습니다.
RUNDLL.EXE, <진입점>, <호출 매개변수>
여기서 주의해야 할 점은 다음과 같습니다. 1. Dll 파일 이름에는 공백이 포함될 수 없습니다. 예를 들어 파일은 c:/PROgramFiles/ 디렉터리에 있습니다. 2. Dll 파일 이름 및 Dll 항목 점 사이에 쉼표가 적어서는 안 됩니다. 그렇지 않으면 프로그램에 오류가 발생하고 정보가 제공되지 않습니다! 3. 이것이 가장 중요한 점입니다. Rundll은 Win32API에서 GetUserName(), GetTextFace() 등과 같은 반환 값 매개 변수가 포함된 Dll을 호출하는 데 사용할 수 없습니다. Visual Basic에서는 외부 프로그램을 실행하기 위한 명령 Shell이 제공됩니다. 형식은 다음과 같습니다.
쉘 "명령줄"
Rundll32.exe에서 Shell 명령을 잘 사용할 수 있다면 VB 프로그램은 다른 방법으로는 달성하기 어렵거나 심지어 불가능한 효과를 갖게 됩니다. 여전히 다시 시작을 예로 들지만, 전통적인 방법에서는 VB에서 모듈을 만들어야 합니다. 프로젝트를 먼저 작성한 다음 WinAPI 선언을 입력하고 마지막으로 프로그램에서 호출합니다. 하지만 이제는 한 문장만 필요합니다.
쉘 "rundll32.exeuser.exe,restartwindows"가 완료되었습니다! 더 편리하지 않나요?
실제로 Rundll32.exe는 다양한 Windows 제어판 및 시스템 옵션을 호출하는 데 있어 고유한 이점을 가지고 있습니다. 아래에는 모든 사람이 프로그래밍에 참조할 수 있도록 인터넷에서 수집한 Rundll 지침을 다음과 같이 나열합니다(매우 유용하며 Windows API를 호출하는 데 많은 시간을 절약할 수 있습니다!!).
명령줄: rundll32.exeshell32.dll, Control_RunDLL
기능: 디스플레이 제어판
명령줄: rundll32.exeshell32.dll,Control_RunDLLaccess.cpl,,1
기능 : "제어판-접근성 옵션-키보드" 옵션창 표시
명령줄: rundll32.exeshell32.dll,Control_RunDLLaccess.cpl,,2
기능 : "제어판-접근성 옵션-소리" 옵션창 표시
명령줄: rundll32.exeshell32.dll,Control_RunDLLaccess.cpl,,3
기능 : "제어판-접근성 옵션-디스플레이" 옵션창 표시
명령줄: rundll32.exeshell32.dll,Control_RunDLLaccess.cpl,,4
기능 : "제어판-접근성 옵션-마우스" 옵션창 표시
명령줄: rundll32.exeshell32.dll,Control_RunDLLaccess.cpl,,5
기능 : "제어판-접근성 옵션-일반" 옵션창 표시
명령줄: rundll32.exeshell32.dll,Control_RunDLLsysdm.cpl@1
기능: "제어판 - 새 하드웨어 추가" 마법사를 실행합니다.
명령줄: rundll32.exeshell32.dll,SHHelpShortcuts_RunDLLAddPrinter
기능: "제어판-새 프린터 추가" 마법사를 실행합니다.
명령줄: rundll32.exeshell32.dll,Control_RunDLLappwiz.cpl,,1
기능: "제어판-프로그램 추가/제거-설치/제거" 패널을 표시합니다.
명령줄: rundll32.exeshell32.dll,Control_RunDLLappwiz.cpl,,2
기능: "제어판-프로그램 추가/제거-Windows 설치" 패널을 표시합니다.
명령줄: rundll32.exeshell32.dll,Control_RunDLLappwiz.cpl,,3
기능: "제어판-프로그램 추가/제거-시동 디스크" 패널을 표시합니다.
명령줄: rundll32.exesyncui.dll,Briefcase_Create
기능: 데스크탑에 새로운 "내 서류 가방"을 만듭니다.
명령줄: rundll32.exediskcopy.dll, DiskCopyRunDll
기능: 플로피 디스크 복사 창을 표시합니다.
명령줄: rundll32.exeapwiz.cpl,NewLinkHere%1
기능: "바로가기 만들기" 대화 상자를 표시합니다. 생성된 바로가기의 위치는 %1 매개변수에 의해 결정됩니다.
명령줄: rundll32.exeshell32.dll,Control_RunDLLtimedate.cpl,,0
기능: "날짜 및 시간" 옵션 창을 표시합니다.
명령줄: rundll32.exeshell32.dll,Control_RunDLLtimedate.cpl,,1
기능: "시간대" 옵션 창을 표시합니다.
명령줄: rundll32.exernaui.dll, RnaDial [전화 접속 연결 이름]
기능: 전화 접속 연결의 전화 접속 창을 표시합니다. 전화 접속 연결이 있는 경우 현재 연결 상태 창이 표시됩니다.
명령줄: rundll32.exernaui.dll,RnaWizard
기능: "새 전화 접속 연결" 마법사 창을 표시합니다.
명령줄: rundll32.exeshell32.dll,Control_RunDLLdesk.cpl,,0
기능: "디스플레이 속성-배경" 옵션 창을 표시합니다.
명령줄: rundll32.exeshell32.dll,Control_RunDLLdesk.cpl,,1
기능: "디스플레이 속성 - 화면 보호기" 옵션 창을 표시합니다.
명령줄: rundll32.exeshell32.dll,Control_RunDLLdesk.cpl,,2
기능: "디스플레이 속성 - 모양" 옵션 창을 표시합니다.
명령줄: rundll32.exeshell32.dll,Control_RunDLLdesk.cpl,,3
기능: "디스플레이 속성 - 속성" 옵션 창을 표시합니다.
명령줄: rundll32.exeshell32.dll,SHHelpShortcuts_RunDLLFontsFolder
기능: Windows "글꼴" 폴더를 표시합니다.
명령줄: rundll32.exeshell32.dll,Control_RunDLLmain.cpl@3
기능: Windows "글꼴" 폴더도 표시합니다.
명령줄: rundll32.exeshell32.dll,SHFormatDrive
기능: 플로피 디스크 포맷 대화 상자를 표시합니다.
명령줄: rundll32.exeshell32.dll,Control_RunDLLjoy.cpl,,0
기능: "제어판-게임 컨트롤러-일반" 옵션 창을 표시합니다.
명령줄: rundll32.exeshell32.dll,Control_RunDLLjoy.cpl,,1
기능: "제어판-게임 컨트롤러-고급" 옵션 창을 표시합니다.
명령줄: rundll32.exemshtml.dll, PrintHTML(HTML 문서)
기능: HTML 문서를 인쇄합니다.
명령줄: rundll32.exeshell32.dll, Control_RunDLLmlcfg32.cpl
기능: Microsoft Exchange 일반 옵션 창을 표시합니다.
명령줄: rundll32.exeshell32.dll,Control_RunDLLmain.cpl@0
기능: "제어판-마우스" 옵션을 표시합니다.
명령줄: rundll32.exeshell32.dll,Control_RunDLLmain.cpl@1
기능: "제어판-키보드 속성-속도" 옵션 창을 표시합니다.
명령줄: rundll32.exeshell32.dll,Control_RunDLLmain.cpl@1,,1
기능: "제어판-키보드 속성-언어" 옵션 창을 표시합니다.
명령줄: rundll32.exeshell32.dll,Control_RunDLLmain.cpl@2
기능: Windows "프린터" 폴더를 표시합니다.
명령줄: rundll32.exeshell32.dll,Control_RunDLLmain.cpl@3
기능: Windows "글꼴" 폴더를 표시합니다.
명령줄: rundll32.exeshell32.dll,Control_RunDLLmain.cpl@4
기능 : "제어판-입력방법 속성-입력방법" 옵션창을 표시합니다.
명령줄: rundll32.exeshell32.dll, Control_RunDLLmodem.cpl,,add
기능: "새 모뎀 추가" 마법사를 실행합니다.
명령줄: rundll32.exeshell32.dll,Control_RunDLLmmsys.cpl,,0
기능: "제어판-멀티미디어 속성-오디오" 속성 페이지를 표시합니다.
명령줄: rundll32.exeshell32.dll,Control_RunDLLmmsys.cpl,,1
기능: "제어판-멀티미디어 속성-비디오" 속성 페이지를 표시합니다.
명령줄: rundll32.exeshell32.dll, Control_RunDLLmmsys.cpl,,2
기능: "제어판-멀티미디어 속성-MIDI" 속성 페이지를 표시합니다.
명령줄: rundll32.exeshell32.dll, Control_RunDLLmmsys.cpl,,3
기능: "제어판-멀티미디어 속성-CD 음악" 속성 페이지를 표시합니다.
명령줄: rundll32.exeshell32.dll, Control_RunDLLmmsys.cpl,,4
기능: "제어판-멀티미디어 속성-장치" 속성 페이지를 표시합니다.
명령줄: rundll32.exeshell32.dll,Control_RunDLLmmsys.cpl@1
기능: "제어판-사운드" 옵션 창을 표시합니다.
명령줄: rundll32.exeshell32.dll, Control_RunDLLnetcpl.cpl
기능: "제어판-네트워크" 옵션 창을 표시합니다.
명령줄: rundll32.exeshell32.dll,Control_RunDLLodbccp32.cpl
기능: ODBC32 데이터 관리 옵션 창을 표시합니다.
명령줄: rundll32.exeshell32.dll,OpenAs_RunDLL{drive:/path/filename}
기능: 지정된 파일(드라이브:/경로/파일 이름)에 대한 "연결 프로그램" 대화 상자를 표시합니다.
명령줄: rundll32.exeshell32.dll,Control_RunDLLpassWord.cpl
기능: "제어판-비밀번호" 옵션 창을 표시합니다.
명령줄: rundll32.exeshell32.dll, Control_RunDLLpowercfg.cpl
기능: "제어판-전원 관리 속성" 옵션 창을 표시합니다.
명령줄: rundll32.exeshell32.dll,SHHelpShortcuts_RunDLLPrintersFolder
기능: Windows "프린터" 폴더를 표시합니다. (rundll32.exeshell32.dll,Control_RunDLLmain.cpl@2와 동일)
명령줄: rundll32.exeshell32.dll,Control_RunDLLintl.cpl,,0
기능: "제어판-국가별 설정 속성-국가별 설정" 옵션 창을 표시합니다.
명령줄: rundll32.exeshell32.dll,Control_RunDLLintl.cpl,,1
기능 : "제어판-국가별 설정 속성-번호" 옵션창을 표시합니다.
명령줄: rundll32.exeshell32.dll,Control_RunDLLintl.cpl,,2
기능 : "제어판-국가별 설정 속성-통화" 옵션 창을 표시합니다.
명령줄: rundll32.exeshell32.dll,Control_RunDLLintl.cpl,,3
기능: "제어판-국가별 설정 속성-시간" 옵션 창을 표시합니다.
명령줄: rundll32.exeshell32.dll,Control_RunDLLintl.cpl,,4
기능 : "제어판-국가별 설정 속성-날짜" 옵션 창을 표시합니다.
명령줄: rundll32.exedesk.cpl,InstallScreenSaver[화면 보호기 파일 이름]
기능: 지정된 화면 보호기 파일을 Windows 화면 보호기로 설정하고 화면 보호기 속성 창을 표시합니다.
명령줄: rundll32.exeshell32.dll,Control_RunDLLsysdm.cpl,,0
기능: "제어판-시스템 속성-일반" 속성 창을 표시합니다.
명령줄: rundll32.exeshell32.dll,Control_RunDLLsysdm.cpl,,1
기능: "제어판-시스템 속성-장치 관리자" 속성 창을 표시합니다.
명령줄: rundll32.exeshell32.dll,Control_RunDLLsysdm.cpl,,2
기능: "제어판-시스템 속성-하드웨어 구성 파일" 속성 창을 표시합니다.
명령줄: rundll32.exeshell32.dll,Control_RunDLLsysdm.cpl,,3
기능: "제어판-시스템 속성-성능" 속성 창을 표시합니다.
명령줄: rundll32.exeuser.exe,restartwindows
기능: 모든 프로그램을 강제로 닫고 컴퓨터를 다시 시작합니다.
명령줄: rundll32.exeuser.exe,exitwindows
기능: 모든 프로그램을 강제로 닫고 컴퓨터를 종료합니다.
명령줄: rundll32.exeshell32.dll, Control_RunDLLtelephon.cpl
기능: "전화 접속 속성" 옵션 창 표시
명령줄: rundll32.exeshell32.dll, Control_RunDLLthemes.cpl
기능: "데스크톱 테마" 옵션 패널 표시
물론 VisualBasic뿐만 아니라 Delphi.VisualC++와 같은 다른 프로그래밍 언어에서도 외부 명령을 호출하여 Rundll의 이러한 기능을 사용할 수 있습니다. 구체적인 방법은 여기에서 자세히 설명하지 않습니다. Rundll을 유연하게 사용하면 확실히 프로그래밍이 쉬워지고 절반의 노력으로 두 배의 결과를 얻을 수 있습니다! ->