用程序修改 系统属性

总的原理 就是利用 FindWindow函数找到相关窗口句柄,然后自动实现选择或去掉某些属性并确定的操作。。

 

UINT   k=WinExec("rundll32.exe   shell32.dll,Control_RunDLL   desk.cpl",SW_SHOW);
    if(k<32)
    {
    CString   x;
    x.Format("%d",k);
    MessageBox(x);                     //   要在error后返回,下同
    }
    HWND   wd=::FindWindow(NULL,"显示   属性");
    if   (wd==NULL)
    MessageBox("Error1");
    ::ShowWindow(wd,SW_HIDE);

    HWND   wtd=FindWindowEx(wd,NULL,"SysTabControl32",NULL);
    if   (wtd==NULL)
    MessageBox("Error2");

    TabCtrl_SetCurFocus(wtd,2);

    HWND   wd1=FindWindowEx(wd,NULL,NULL,"外观");
    if   (wd1==NULL)
    MessageBox("Error3");
    HWND   cb1=FindWindowEx(wd1,NULL,"ComboBox",NULL);
    if   (cb1==NULL)
    MessageBox("Error4");
    ::SendMessage(cb1,CB_SELECTSTRING,-1,(long)"淡绿色");
    long   id=::GetDlgCtrlID(cb1);
    ::SendMessage(wd1,WM_COMMAND,   MAKELONG(id,CBN_SELCHANGE),(long)cb1);
    HWND   cb2=FindWindowEx(wd1,cb1,"ComboBox",NULL);
    if   (cb2==NULL)
    MessageBox("Error5");
   
    //同上可在这修改项目
    //   或其它属性
    HWND   bb1=FindWindowEx(wd,NULL,NULL,"确定");
    if   (bb1==NULL)
    MessageBox("Error6");
    id=::GetDlgCtrlID(bb1);
    ::SendMessage(wd,WM_COMMAND,   MAKELONG(id,BN_CLICKED),(long)bb1);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值