说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

在Delphi程序中调用控制面板设置功能

HTML文档下载 WORD文档下载 PDF文档下载
在Delphi程序中调用控制面板设置功能

应用程序运行时,有时需要对系统环境有特殊要求。例如,在Delphi数据库应用程序中可能需要进行BDE(Borland Database Engine)或ODBC数据源名称(DSN:Data Source Name)的设置;在网络应用程序中可能需要进行网络配置设置、Modem属性设置或用户拨号连接的帐号和密码的设置并保存在系统中;在CTI(Computer-Telephony Integration)应用程序中可能需要进行电话拨号属性的设置;在游戏程序中可能需要对多媒体或游戏控制器进行设置;等等。这时候就需要改变Windows系统的环境设置,以适应应用程序正常运行的要求。当应用程序不能自行进行环境设置时,可能需要软件用户来参与、协助完成设置。

Win9X/NT的大多数系统设置是在控制面板中进行的。我们可以要求用户自己打开控制面板寻找相应的项目进行设置,此时要求用户对控制面板相当熟悉;也可以在程序中自动为用户打开控制面板并选择相应的项目,此时用户所做的只是进行设置。后一种方法无疑更具有友好性,更能提高用户的工作效率。

控制面板的大多数项目设置,都对应Windows的System目录下的一个CPL文件,如“Internet”属性对应的文件为InetCpl.cpl、“多媒体”属性对应的文件为MmSys.cpl等。通过调用这些文件可以打开相应的属性设置窗口,甚至可以跳到相应的属性页如“Internet”属性的“连接”属性页,有效减少软件用户的操作步骤。

CPL文件的调用格式为“RunDLL32.exe Shell32.dll

Control_RunDLL CPLFile.cpl

ItemNo”(可参见注册表中HKEY_CLASSES_ROOT\cplfile\shell\cplopen\command的默认值),其中CPLFile.cpl为CPL文件,ItemNo为项目编号。在Delphi程序中,可以用WinExec或CreateProcess函数来实现CPL文件调用,从而实现对控制面板的设置项目的调用。如进行拨号连接的帐号和密码设置要调用“Internet”属性的“连接”属性页,可以用语句“WinExec(’RunDLL32.exe Shell32.dll

Control_RunDLL InetCpl.cpl

3’

SW_SHOWNORMAL);”;解决2000年问题中对两位年份输入的解释要调用“区域设置”的“日期”属性页,可以用语句:“WinExec(’RunDLL32.exe Shell32.dll

Control_RunDLL Intl.cpl

4’

SW_SHOWNORMAL);”。

控制面板各项目设置调用所对应的语句列表如下:

//打开控制面板

WinExec(’RunDLL.exe Shell32.DLL

Control_RunDLL’

SW_SHOWNORMAL);

//32位ODBC数据源管理器,ODBC数据源、ODBC驱动程序设置

//没有提供参数区分“用户DSN”“系统DSN”“文件DSN”“ODBC驱动程序”“跟踪”“关于”六个属性页

WinExec(’RunDLL32.exe Shell32.dll

Control_RunDLL ODBCCP32.CPL’

SW_SHOWNORMAL);

//BDE Adminstrator

//没有提供参数区分“Databases”和“Configuration”两个属性页

WinExec(’RunDLL32.exe Shell32.dll

Control_RunDLL BdeAdmin.CPL’

SW_SHOWNORMAL);

//Internet 属性,可有ItemNo参数

//“常规”属性页

WinExec(’RunDLL32.exe Shell32.dll

Control_RunDLL InetCpl.cpl

0’

SW_SHOWNORMAL);

//“安全”属性页

WinExec(’RunDLL32.exe Shell32.dll

Control_RunDLL InetCpl.cpl

1’

SW_SHOWNORMAL);

//“内容”属性页

WinExec(’RunDLL32.exe Shell32.dll

Control_RunDLL InetCpl.cpl

2’

SW_SHOWNORMAL);

//“连接”属性页

WinExec(’RunDLL32.exe Shell32.dll

Control_RunDLL InetCpl.cpl

3’

SW_SHOWNORMAL);

//“程序”属性页

WinExec(’RunDLL32.exe Shell32.dll

Control_RunDLL InetCpl.cpl

4’

SW_SHOWNORMAL);

//“高级”属性页

WinExec(’RunDLL32.exe Shell32.dll

Control_RunDLL InetCpl.cpl

5’

SW_SHOWNORMAL);

//电话拨号属性,没有提供参数区分“我的位置”和“电话语音驱动程序”两个属性页

WinExec(’RunDLL32.exe Shell32.dll

Control_RunDLL Telephon.cpl’

SW_SHOWNORMAL);

//电源管理设置,没有提供参数区分“电源方案”和“高级”两个属性页

WinExec(’RunDLL32.exe Shell32.dll

Control_RunDLL PowerCfg.cpl’

SW_SHOWNORMAL);

//调制解调器设置,没有提供参数区分“常规”和“诊断”两个属性页

WinExec(’RunDLL32.exe Shell32.dll

Control_RunDLL Modem.cpl’

SW_SHOWNORMAL);

//多媒体设置,可有ItemNo参数

//“音频”属性页

WinExec(’RunDLL32.exe Shell32.dll

Control_RunDLL Mmsys.cpl

0’

SW_SHOWNORMAL);

//“视频”属性页

WinExec(’RunDLL32.exe Shell32.dll

Control_RunDLL Mmsys.cpl

1’

SW_SHOWNORMAL);

//“MIDI”属性页

WinExec(’RunDLL32.exe Shell32.dll

Control_RunDLL Mmsys.cpl

2’

SW_SHOWNORMAL);

//“CD音乐”属性页

WinExec(’RunDLL32.exe Shell32.dll

Control_RunDLL Mmsys.cpl

3’

SW_SHOWNORMAL);

//“设备”属性页

WinExec(’RunDLL32.exe Shell32.dll

Control_RunDLL Mmsys.cpl

4’

SW_SHOWNORMAL);

//辅助选项设置,可有ItemNo参数

//“键盘”属性页

WinExec(’RunDLL32.exe Shell32.dll

Control_RunDLL access.cpl

1’

SW_SHOWNORMAL);

//“声音”属性页

WinExec(’RunDLL32.exe Shell32.dll

Control_RunDLL access.cpl

2’

SW_SHOWNORMAL);

//“显示”属性页

WinExec(’RunDLL32.exe Shell32.dll

Control_RunDLL access.cpl

3’

SW_SHOWNORMAL);

//“鼠标”属性页

WinExec(’RunDLL32.exe Shell32.dll

Control_RunDLL access.cpl

4’

SW_SHOWNORMAL);

//“常规”属性页

WinExec(’RunDLL32.exe Shell32.dll

Control_RunDLL access.cpl

5’

SW_SHOWNORMAL);

//密码设置,没有提供参数区分“更改密码”和“修改用户配置”两个属性页

WinExec(’RunDLL32.exe Shell32.dll

Control_RunDLL Password.cpl’

SW_SHOWNORMAL);

//区域设置,可有ItemNo参数

//“区域设置”属性页

WinExec(’RunDLL32.exe Shell32.dll

Control_RunDLL Intl.cpl

0’

SW_SHOWNORMAL);

//“数字”属性页

WinExec(’RunDLL32.exe Shell32.dll

Control_RunDLL Intl.cpl

1’

SW_SHOWNORMAL);

//“货币”属性页

WinExec(’RunDLL32.exe Shell32.dll

Control_RunDLL Intl.cpl

2’

SW_SHOWNORMAL);

//“时间”属性页

WinExec(’RunDLL32.exe Shell32.dll

Control_RunDLL Intl.cpl

3’

SW_SHOWNORMAL);

//“日期”属性页

WinExec(’RunDLL32.exe Shell32.dll

Control_RunDLL Intl.cpl

4’

SW_SHOWNORMAL);

//日期/时间设置,可有ItemNo参数

//“日期和时间”属性页

WinExec(’RunDLL32.exe Shell32.dll

Control_RunDLL TimeDate.cpl

0’

SW_SHOWNORMAL);

//“时区”属性页

WinExec(’RunDLL32.exe Shell32.dll

Control_RunDLL TimeDate.cpl

1’

SW_SHOWNORMAL);

//鼠标设置,没有提供参数区别“按钮”、“指针”和“移动”三个属性页

WinExec(’RunDLL32.exe Shell32.dll

Control_RunDLL Main.cpl’

SW_SHOWNORMAL);

//添加/删除程序设置,可有ItemNo参数

//“安装/卸载”属性页

WinExec(’RunDLL32.exe Shell32.dll

Control_RunDLL AppWiz.cpl

1’

SW_SHOWNORMAL);

//“Windows安装程序”属性页

WinExec(’RunDLL32.exe Shell32.dll

Control_RunDLL AppWiz.cpl

2’

SW_SHOWNORMAL);

//“启动盘”属性页

WinExec(’RunDLL32.exe Shell32.dll

Control_RunDLL AppWiz.cpl

3’

SW_SHOWNORMAL);

//网络设置,没有提供参数区别“配置”、“标识”和“访问控制”三个属性页

WinExec(’RunDLL32.exe Shell32.dll

Control_RunDLL NetCpl.cpl’

SW_SHOWNORMAL);

//系统设置,

//“常规”属性页, 可有ItemNo参数

WinExec(’RunDLL32.exe Shell32.dll

Control_RunDLL SysDm.cpl

0’

SW_SHOWNORMAL);

//“设备管理器”属性页

WinExec(’RunDLL32.exe Shell32.dll

Control_RunDLL SysDm.cpl

1’

SW_SHOWNORMAL);

//“硬件配置文件”属性页

WinExec(’RunDLL32.exe Shell32.dll

Control_RunDLL SysDm.cpl

2’

SW_SHOWNORMAL);

//“性能”属性页

WinExec(’RunDLL32.exe Shell32.dll

Control_RunDLL SysDm.cpl

3’

SW_SHOWNORMAL);

//显示设置, 可有ItemNo参数

//“背景”属性页

WinExec(’RunDLL32.exe Shell32.dll

Control_RunDLL desk.cpl

0’

SW_SHOWNORMAL);

//“屏幕保护程序”属性页

WinExec(’RunDLL32.exe Shell32.dll

Control_RunDLL desk.cpl

1’

SW_SHOWNORMAL);

//“外观”属性页

WinExec(’RunDLL32.exe Shell32.dll

Control_RunDLL desk.cpl

2’

SW_SHOWNORMAL);

//“设置”属性页

WinExec(’RunDLL32.exe Shell32.dll

Control_RunDLL desk.cpl

3’

SW_SHOWNORMAL);

//游戏控制器设置,可有ItemNo参数

//“一般”属性页

WinExec(’RunDLL32.exe Shell32.dll

Control_RunDLL Joy.cpl

0’

SW_SHOWNORMAL);

//“高级”属性页

WinExec(’RunDLL32.exe Shell32.dll

Control_RunDLL Joy.cpl

1’

SW_SHOWNORMAL);

//扫描仪与数字相机设设置,没有提供参数区分“设备”和“记录设置”两个属性页

WinExec(’RunDLL32.exe Shell32.dll

Control_RunDLL StiCpl.cpl’

SW_SHOWNORMAL);

以上程序在PWIN98+DELPHI3.0下调试通过.

数据会被清空:部分三星、魅族手机存安全漏洞 IE10简化文件访问 支持FileReader API 从MySQL迁移到MariaSQL Wikipedia力求开放 奥巴马筹款网站的制作过程 国内芯片厂商发力4G 新岸线2013年将推LTE方案 CMDN Club 23期:开放平台和O2O移动产品开发 花旗调低Apple股票评级 不信iPhone5会卖得好 2012年Linux Journal读者选择奖结果公布 百度云SiteApp:三步轻松创建移动网站 Twitter跨数据中心图片存储系统Blobstore解析 摩托罗拉携手中国移动发布Intel Inside智能机新锋丽i MT788 第五届“英特尔杯”全国大学生软件创新大赛圆满落幕 Appro推出液冷超级计算机 Dell:曾敦促微软WinRT放弃Windows品牌 IE10十大优点:渲染页面比Chrome快8% 法国电信:开放平台下的O2O移动产品怎么玩? 客如云创始人彭雷:寻找O2O“失落的半圆” 中国电信宋鹏飞:天翼开放平台的服务及架构解析 W3C小组宣布:HTML5标准制定完成 还记得DUQU吗?起因可能是Windows中存在了20多年的漏洞! API管理的五大规则 Google也节能:挖角美能源部Arun Majumdar博士 预测:云计算领域的5大变革 CTO俱乐部:移动信息化的创新实践及互联网创业 核心组图曝光:BlackBerry 10明年1月30日发布 “蛐蛐儿”创始人朱连兴:音频二维码的技术实现和应用场景 信恩科技创始人林兴陆:QR Code二维码的前世今生 2012移动开发工具盘点:傻瓜式游戏工具引擎 《福布斯》发布年度“未来之星” 扎克伯格上榜 Cloudera透露Impala发行版新功能及开源计划 Nokia落寞身影下 三星成为全球最大手机厂商 请高手指点一二。 简单问题:我却搞不定:--- vc7.0里面为什么不认cos、sin等数学函数? OracleOraHome81ManagementServer服务的启动问题。 activex 发布 用C#怎样得到一个dll文件的版本号呢? 问一个比较简单的问题! 关于msgbox的简单问题,才鸟求知,谢谢帮忙!!!!! 困惑。什么工作好啊,来者有分 大哥、大姐们,快拔刀吧! 如何取得SQL SERVER2000数据库某字段的空值? 如何用split分割纵向字符串?在线等候. 关于java workshop的问题(急) 向高手请教一个问题(硬编译),至少200分相送 为什么我用request.getPathInfo()取到的结果为空? c# 版的朋友们大家好!!新手登录,多多帮助! oracle触发1器 一个好多人问过的问题,可是我这里还是不能用,请在帮下忙 发布Applet出现的错误,帮忙撒 本人在PB开发中遇到莫名其妙的问题 强烈建议成立crack专栏,同意的请跟帖。 textbox的输入问题 我的98系统在重新启动后再进入系统时屏幕上会出现一闪闪的雪花点,这是为什么呀? 请教!谁会使用这个API函数(DbiPackTable),该函数在BDE32.HLP中。 一个循环问题,急急急!! mysql -h remotehost -u root连不上对方机子? 分布式应用中的服务器端访问当地窗口的问题 打印的问题,大家请看,得到你们的思路,马上给分! 我想做一个保存图片资源的dll文件,谁有这方面的文章和代码啊? 看一下这个ServiceApp.出错信息! 有专家吗?Cache问题 那里有linux原码下栽?不全也可以? 怎么用OPENCV?(50分) winsock下载FLASH动画的错误问题 好好看看这个妞,天机不可泄漏啊,哈哈哈哈 VxD 中如何使用 sprintf 等函数?[200 分] help me !!! 急急急!!! 有关datareport的问题! 我下载了Core SDK,《windows核心编程》的示例还是编译不成功? SQL Server中定义image类型的问题? 鼠标拖拽效果 简单的问题?高分相送,UP者有分。。。。。。。。 到底到哪里找weblogic 7的破解文件啊? 请教向win2000 server申请证书的问题 我有了一只小猫,好可爱啊!为它散分!TMD,只有最后125分了! query1.CanModify:= true;???? 我下载了Core SDK,《windows核心编程》的示例还是编译不成功? 现急需bmp文件转换成jpg文件的java源代码,请高手们帮帮忙,分数可再加。 大家有没有做过宏的,我写了一个宏却有下面的提示. 。。。如何对所访问的网站的返回结果进行处理。。。 对甲苯磺酸的作用 一只蚂蚁从长为4cm,宽为3cm,高为12cm的长方体纸箱的A点沿纸箱爬到B点,那么它所性的最短路线的长是---- 电动车电池质保多长时间铅酸的电动车电池电池质保多长时间,到2010年4月24日没有一个回答正确的.我都听说了,大多数都是保15个月;有的保20个月;还有的保两年,就是不知道什么品牌的.告诉 对甲苯磺酸做酯化反应的催化剂的机理. 一只蚂蚁从长为4cm,宽为1cm,高是12cm的长方体纸箱的A点沿纸箱爬到B点,那么它所行的最短路线的长是多少 腌制火腿是,添加nano2(这是?)是为了让颜色越鲜艳越好, 对甲苯磺酸的生产商有哪些?催化硬脂酸酯化反应 利用二氧化碳的物理性质可以用二氧化碳作( )进行( ),也可以用它来隔绝空气,进利用二氧化碳的物理性质可以用二氧化碳作( )进行( ),也可以用它来隔绝空气,进行( ). 太空记忆枕头保健枕健康枕芯护颈枕颈椎枕头一般价格是多少呢? 请问对甲苯磺酸变红了,是吸潮的原因吗?用其做催化剂,影响反应质量吗? 五年级下册口语交际三的作文“劝说”作文800字星期一要用 记忆枕,护颈枕,太空枕,保健枕头 二氧化碳是怎样溶解倒可乐中的?那为什么摇可乐是会将可乐中的二氧化碳分离出来呢? 5年级下册第三单元口语交际,劝说短文50-100字左右. 已知逻辑关系如下,绘制双代号网络图,并计算时间参数ES、LS、EF、LF、TF和FF,找出关键线路用双箭头线标出工作ABCDEFGH紧前工作——ABBBC、DC、EF、G时间13162421 烯烃加氢包和反应产生什么?有没芳烃产生? 五年级下册口语交际3劝说作文怎么写啊?口语交际本次口语交际的话题是“劝说”,这里有规劝的意思,劝说别人改掉不良的习惯.安排这次口语交际的目的,是让学生在交际中学会怎样动之以情 根据表中各工序的逻辑关系,绘制双代号网络图,计算ES,LS,TF,FF,工期,标出关键线路. 急,有会的朋友们帮帮忙吧,谢谢了. 芳烃的亲电反应活性的快慢(六元环、五元环、苯) 五年级下册口语交际三的作文“劝说”作文要450字 计算机中BS HT LF VT FF CR CAN ESC SP DEL 的原英文是什么 一只蚂蚁从长4㎝,宽3㎝,高是12㎝的长方体纸箱的a点沿纸箱爬到b点,那么它所行最短路线的长是? 怎么样把铝线上的 油渍去掉?又有亚光的?我是想怎么铝线上的 油渍洗白 又有亚光的 英语的意思ls thistheartroom? 如何用分子筛去除无水乙醇中的水想用3A分子筛除去无水乙醇和邻苯二甲酸二丁酯中的水分,需浸泡多长时间啊? 质量相同的H2O和D2O所含中子数之比怎么算? 目前市场上销售的汽水饮料大多数是碳酸饮料,其中溶有二氧化碳气体.打开汽水瓶盖时,汽水会自动喷出来,这说明气体在水中的溶解度与压强有关,且( )喝了汽水之后会打嗝,这说明气体溶 place of interest用英文翻译 五年级语文下册第三单元口语交际 劝说 450~500字 五年级下册语文口语交际3,劝说乱丢垃圾的,至少写出五条,从从轻到重、从己到他 铝粉膏是否有毒 如何鉴别可乐中冒出的气体是二氧化碳?如何鉴别可乐中冒出的气体是二氧化碳呢?谁谁谁知道么? 五年级下册语文第三单元口语交际劝说怎么写?快! 关于红甘蓝汁加什么水果变成什么颜色的报告 人体呼吸具有净化空气的作用.能使吸入的气体变清洁的结构有什么 梦兮 安睡慢回弹枕头 太空记忆枕头 零压力护颈枕 颈椎保健 秋天熟的果子.什么颜色,像什么? 芦荟净化空气吗?净化空气中的哪些有害物质 五年级下册语文第三单元口语交际 劝说 怎么写啊.急.19: 什么花长青色的果子然后变成红色的果子大小和花生差不多,是观赏花卉 什么品种的芦荟对人的身体、净化空气等最好? 一战对英国 影响最好是各方面都有的 比如对经济啊这种的 women,democracy,imperialism,territorial expansion,new ideologies,social change.3Q3Q不一定要英文,中文的也OK。因为要写论文,要是带点什么参考书目 怎样区别药物催化剂水果和自然水果 导致各种类型食品安全事件的原因是什么 英国在一战中是什么角色 危化品登记在危化品名录找不到咋办啊?比如混合芳烃、重芳烃的危化品信息怎么找啊? 哪些公司用食品安全检测系列产品Ⅰ、酶联免疫(ELISA)试剂盒Ⅱ、胶体金速测试纸条(卡)Ⅲ、荧光定量PCR检测试剂盒上述这些产品,都是哪些公司在用呢?我是做销售的,有这方面的货源,想 英国在一战中的作用 纤维素醚是危险品吗?如果是危品,它是几类危品? 身体权被侵害有哪些种类? 一战的影响要简短的那种,答题用的,两三行就够用! 食品安全对人有哪些危害?具体点讲.zhidao.baidu.com/question/533812619.html 口语交际 劝说10字 房屋装饰工程质保时间及质保金 急求牛津9a 第3课place of interest的课文和单词、单词最好有意思.答得好追加分、 五年级下册语文第三单元口语交际劝说请别要乱就垃圾100字 什么汽车整车质保时间最长 对甲苯磺酸是不是可以酯化反应?不是做催化剂哈,就是它本身做反应物.它与羟基作用是不是生成酯?反应条件一般是什么?小妹在此先谢过! 甲醚用铜做催化剂加热 反应生成什么物质 写出化学反应方程式 这个 3年有限质保 主要我觉的是“有限”这两个字要注意,这很容易令身为消费者的我们受到伤害的!
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘