小工具—系统API应用
下午班上一做网站的同学打电话,请我帮忙做一个小工具。源于他做了一个网站,手头也采集了大量的帖子(应该是电子文档吧),发帖子总不能是一个时候发的吧,于是就请可帮做一个小工具——在指定的时间范围内间隔指定的时间随机改变系统时间。
要改变系统时间,.NET里好像没有现成的方法,就只有通过Win32 API来实现了。于是我就查阅了API大全,得到的SetSystemTime函数:
在SetSystemTime的参数中,参数类型为SYSTEMTIME,查阅MSND后得到SYSTEMTIME的结构如下:
typedef struct _SYSTEMTIME {
WORD wYear;
WORD wMonth;
WORD wDayOfWeek;
WORD wDay;
WORD wHour;
WORD wMinute;
WORD wSecond;
WORD wMilliseconds;
} SYSTEMTIME;
其内容相信不用我说了吧。
所以在C#中SYSTEMTIME的结构和SetSystemTime函数定义如下:
![](/assets/blank.gif)
2
![](/assets/blank.gif)
3
![](/assets/blank.gif)
![](/assets/blank.gif)
![](/assets/blank.gif)
4
![](/assets/blank.gif)
5
![](/assets/blank.gif)
6
![](/assets/blank.gif)
7
![](/assets/blank.gif)
8
![](/assets/blank.gif)
9
![](/assets/blank.gif)
10
![](/assets/blank.gif)
11
![](/assets/blank.gif)
12
![](/assets/blank.gif)
13
![](/assets/blank.gif)
14
![](/assets/blank.gif)
15
![](/assets/blank.gif)
已经有了设为系统时间的方法,接下来就需要一个方法来创建随机时间。如果你直接取年的随机值、月的随机值、日的随机值……这种方法是不可行的,因为你会发现取到的时间并不一定是在你限定的时间范围内。
因为Datetime的基本单位是秒,所有我们可以在秒上做文章:先用TimeSpan求出两个时间之间相差的秒数,在以秒为最大值随机取一个值,然后以就小的时间加上随机取得的数。
![](/assets/blank.gif)
2
![](/assets/blank.gif)
![](/assets/blank.gif)
![](/assets/blank.gif)
3
![](/assets/blank.gif)
4
![](/assets/blank.gif)
5
![](/assets/blank.gif)
6
![](/assets/blank.gif)
7
![](/assets/blank.gif)
8
![](/assets/blank.gif)
9
![](/assets/blank.gif)
10
![](/assets/blank.gif)
11
![](/assets/blank.gif)
12
![](/assets/blank.gif)
13
![](/assets/blank.gif)
14
![](/assets/blank.gif)
接下来是将DateTime转换为SystemTime
![](/assets/blank.gif)
![](/assets/blank.gif)
1
![](/assets/blank.gif)
2
![](/assets/blank.gif)
![](/assets/blank.gif)
![](/assets/blank.gif)
3
![](/assets/blank.gif)
4
![](/assets/blank.gif)
5
![](/assets/blank.gif)
6
![](/assets/blank.gif)
7
![](/assets/blank.gif)
8
![](/assets/blank.gif)
9
![](/assets/blank.gif)
10
![](/assets/blank.gif)
11
![](/assets/blank.gif)
12
![](/assets/blank.gif)
13
![](/assets/blank.gif)
14
![](/assets/blank.gif)
15
![](/assets/blank.gif)
源码下载:
http://files.cnblogs.com/desmend/ChangeSysTime.rar
转载于:https://www.cnblogs.com/desmend/archive/2008/09/22/1296289.html
小工具—系统API应用相关推荐
- python课程小作业之桌面小工具系统
from tkinter import *#图形界面包 from tkinter import messagebox import os.path import os import math impo ...
- php测试接口的小工具,PHP API接口测试小工具
前端时间给手机客户端做接口,当时弱爆了,写完API接口后,也不怎么测试,最后是等客户端调用的时候检验API的正确性. 后面利用PHP的curl实现Post请求,检验API接口的正确性:配合前面做的一个 ...
- Python小工具——通过API获取天气预报
Python通过API获取天气预报 闲来无事,用Python实现了一个小工具,通过实现API来获取当前的天气预报. 获取API的key 在阿凡达数据上查找天气预报相关的API,注册申请可获得一个key ...
- android小工具-系统音量管理器
简介:调节系统音量的小工具,能够快捷的调节系统铃声,媒体音乐.闹钟和通话声音.你可能会想,手机自带的音量键还不够快捷吗?还得写个程序?首先,用音量键调音只能调节一种声音,像闹钟这种声音不能直接调.其次 ...
- 利用这个小工具+系统日历让你在SCAU成为时间管理大师
- win7倒计时桌面小工具_iOS 14系统面板截图曝光,新增桌面小工具,越来越像安卓了...
商务合作请联系QQ:710035765 大家好,我是波老师.随着iOS 14越来越多的爆料,波老师预测距离iOS 14测试版的发布也要越来越近了.近日,有博主在Twitter上曝出了iOS 14墙纸设 ...
- php api接口调试,PHP API接口测试小工具
前端时间给手机客户端做接口,当时弱爆了,写完API接口后,也不怎么测试,最后是等客户端调用的时候检验API的正确性. 后面利用PHP的curl实现Post请求,检验API接口的正确性:配合前面做的一个 ...
- php 接口测压,PHP API接口测试小工具
前端时间给手机客户端做接口,当时弱爆了,写完API接口后,也不怎么测试,最后是等客户端调用的时候检验API的正确性. 后面利用PHP的curl实现Post请求,检验API接口的正确性:配合前面做的一个 ...
- 今日头条Marketing API小工具(.Net Core版本)
前言 由于工作原因,需要用到今日头条的Marketing API做一些广告投放的定制化开发.然后看现在网上也没多少关于头条Marketing API的文章,于是便就有了该篇文章. 头条Marketin ...
最新文章
- [转帖]tar高级教程:增量备份、定时备份、网络备份
- android sdk版本控制,1. 统一SDK版本管理配置
- c语言字符串化简,华为面试题:一元多项式的化简 C语言实现源码
- ajax jq 图片上传请求头_如何使用js或jQuery向Ajax请求添加自定义HTTP头?
- JZOJ 5639. 【NOI2018模拟4.8】秘密袭击
- 企业或将借助OA走出经济危机
- 经典排序算法(五)--鸽巢排序Pigeonhole Sort
- python与pycharm的作用_JSON 在pycharm 与python 三者有什么关系?JSON有什么作用?
- mysql ---- 全文索引:中文语义分词检索
- 数字后端设计相关文件说明
- 【优化求解】基于头脑风暴优化算法BSO求解最优目标matlab源码
- Android学习之登陆界面设计(二)基本界面设计
- python打开文件对话框
- 微信页面模板基础知识汇总
- linux oracle 常用操作
- Pytorch混合精度训练
- 性能指标:队列深度、IOPS与时延
- IOS开发之——图片的内存优化
- 就业市场状况指数(LMCI)和非农数据
- 打开anaconda prompt 出错 import ctypes
热门文章
- html不同类别的列表设置,HTML --列表
- contos7改分辨率_centos7分辨率怎么设置-修改centos7分辨率的方法 - 河东软件园
- figma客户端_小白的Figma入门手册
- 邹检验 matlab,科学网—Matlab中一个很有用的函数:regionprops - 邹兴文的博文
- 系统学习机器学习之随机场(二)--MEMM
- USC ECG Learning Center/ ECG Glossary
- Vue- Markdown 使用大全
- android中的横幅通知
- Hive提取json字段信息
- Windows Driver开发_TraceEvents调试以及加载驱动的方法