2019-09-06  11,297 views 25

C#修改WINDOWS系统设置

温馨提示:本文共计1068个字,预计阅读时间需要4分钟。

C#如何修改WINDOWS系统设置

近期写了两个小程序给测试工程师使用,分享记录以便查阅。

主要利用 C# 调用系统的命令完成,相当于增加一个壳。

以前写的小工具都没记录,导致这次花费很多时间查找资料,真是许久不练手生。

SysInit

之前一心想裸辞,正好某天某同事怼我写一个工具方便制作测试母盘,再一想反正要离职,干脆做个人情写个工具方便他们日后的工作,于是就有了这个小工具和图中的话。

C#修改WINDOWS系统设置

软件主要涉及三个对系统的操作,调用 CMD 完成指令,控制注册表,拉起系统应用。

调用 CMD 完成指令

主要方法(来源 njl_041x

调用代码

控制注册表

大多数设置都是通过修改注册表来完成,比如下面关闭 UAC,

拉起系统应用

其实也可以通过 CMD 完成,但如果只是简单的调用 1 个系统应用,用 Process 就快多了。

PWRLED

上面才说写最后一个工具,结果 1 个月没到就自己打脸,LED 测试需要做防呆,同事找我帮忙,然后,我就......写了。

利用C#产生随机数防呆

之前在笔记本电脑生产工艺中有提到一些制程,为了避免人员作业疏失或故意漏测,测试软件在设计上都要做到防呆,避免问题产品流出。举例:声音测试,本来其实放音乐,作业员听,有声音就过,这是人为控制,没声音人员也可以放入下一站,故为了防止这样的情况,在测试过程中通过播放随机数字的方式进行防呆,人员需敲击键盘对应的相同数字才能过,否则不通过。

程序传参代码,修改 program.cs 中的 main 入口。

随机数设定,这里特别记录下,Random 在快速连续生成随机数的时候会出现相同随机数,我这里的使用环境不会出现快速连续的情况,所以 random 还是合适的,以后如果有需要快速生成大量随机数时,把对象种子修改为 GUID 声明或者延时均可。

程序执行结果返回(方便在 CMD 中使用 errorlevel 判断)

其实都是一些很基础很常用的代码,勤能补拙,多记录免得以后到处查资料。


工厂底层的工具都是供应商提供,比如设置 BIOS 的软件,大都用 C 编写,厂内主要调用这些软件进行测试,所以我写的大多数都是壳或者文本处理,没啥高深的代码,让各位见笑了。

-End-

25 条评论  访客:15 条  作者:10 条

  1. nice LV3

    大佬!请收下我的膝盖!!!

    • Sam.Z GM

      @nice 都是些小东西,稍微懂都会的,你也可以。

      • nice LV3

        @Sam.Z 嘿嘿!中秋节快乐~

  2. Mr.Chou LV4

    开开心心的点进来,看到代码后一脸懵逼的爬出去了,真心看不懂。嘿嘿

    • Sam.Z GM

      @Mr.Chou 哈哈,这也是我生活的一部分,代码人生。

  3. 小石 LV3

    :mrgreen: 有点高级

  4. Mark LV1

    :cool: 以前学的C#都忘记了……

    • Sam.Z GM

      @Mark 天下代码是一家,永远不分你我他。

  5. 执迷不悟 LV2

    佩服把代码当工作的人?据说脑细泡死的快容易秃顶hei’heiheihei :mrgreen:

    • Sam.Z GM

      @执迷不悟 还好我搞的都是简单的,复杂的怕是已经快形成中南海了。

  6. 征文网

    C# C++ C傻傻分不清楚

  7. 野生的喵喵 LV2

    continue to work hard! that `s so cool~ :mrgreen: 我是中文补丁.exe

  8. repostone

    非技术的路过。

  9. 淡然若雅 LV1

    看到代码就傻眼了,可能俺天生就不是搞理科的料吧。

    • Sam.Z GM

      @淡然若雅 哈哈,你的文采已经胜过了无数代码

  10. 鸟叔 LV2

    用C#编程,厉害!

    • Sam.Z GM

      @鸟叔 小打小闹,都是基础

  11. 刘大喵 LV1

    一脸懵逼 哈哈哈

    • Sam.Z GM

      @刘大喵 =。= 维护大牛,我这完全是儿戏

  12. 趣知识

    C#,我用过好多年,不错也好多年没用了

  13. yoyo7

    大神,最近我也在用C#做自动设定Windows系统设置的东西。
    一些设置比如屏幕超时设置,通知与操作,通过wmi也好,注册表也好,win api也好都没有找到合适的方法去设置。
    Windows系统设置的东东我该去如何调查他们能否自动设置,怎么去自动设置

    • Sam.Z GM

      @yoyo7 可以一起讨论互相学习,发我邮箱,在关于页面有,我们一起来攻克

    • yoyo7

      @yoyo7 给您留言了,请不惜赐教

评论已关闭!