这几天在做新项目,新项目中,有一个需求,需要点击一个按钮,打开power options。
经过查找分别得到C++和C#下的两个api可以调用一些特殊命令来实现。方法如下:
打开power options.
C++:WinExec("rundll32.exe shell32.dll,Control_RunDLLpowercfg.cpl",SW_SHOWNORMAL);
C#: using System.Diagnostics;
Process.Start("rundll32.exe","shell32.dll,Control_RunDLL powercfg.cpl");
其它特殊窗口也可以用这个方法打开,只是里面具体的命令不同。
详细命令如下:
命令列: rundll32.exe shell32.dll,Control_RunDLL
功能: 显示控制面板
. X. u2 ]1 J3 |0 n
命令列: rundll32.exe shell32.dll,Control_RunDLL access.cpl,,1
功能: 显示“控制面板-辅助选项-键盘”选项视窗# i. Q# z# n1 Z$ t, G: j* ?
命令列: rundll32.exe shell32.dll,Control_RunDLL access.cpl,,2
功能: 显示“控制面板-辅助选项-声音”选项视窗
命令列: rundll32.exe shell32.dll,Control_RunDLL access.cpl,,32 E3 ^0 Q" l2 A) Q* ?) T
功能: 显示“控制面板-辅助选项-显示”选项视窗
! p \; g. _! c+ q/ o/ r2 C
% M) t/ m) \ L6 ~9 c9 A1 R/ X5 [
命令列: rundll32.exe shell32.dll,Control_RunDLL access.cpl,,4
功能: 显示“控制面板-辅助选项-滑鼠”选项视窗
命令列: rundll32.exe shell32.dll,Control_RunDLL access.cpl,,5. |/ U+ M6 c, U' B
功能: 显示“控制面板-辅助选项-传统”选项视窗
命令列: rundll32.exe shell32.dll,Control_RunDLL sysdm.cpl @1
功能: 执行“控制面板-添加新硬体”向导。; h6 x, [ F" x9 K
6 T! I2 A/ q( [- M8 ]
命令列: rundll32.exe shell32.dll,SHHelpShortcuts_RunDLL AddPrinter# z5 S4 g- L( {' U
功能: 执行“控制面板-添加新印表机”向导。
" Q. t# {7 P) B1 u% U0 b: F( b3 @
命令列: rundll32.exe shell32.dll,Control_RunDLL appwiz.cpl,,1
功能: 显示 “控制面板-添加/删除程式-安装/卸载” 面板。3 C7 F: T6 ?8 Z5 r
1