开发此程序的背景:
公司原来是由刷卡考勤的,每天早上8:30之前刷卡进门,每天5:30准时刷卡闪人~~
后来经理发现每天由于进进出出,刷卡记录不好统计,于是就想到了用通达OA系统中的考勤登记。。
想想貌似蛮方便的,经理的确是方便了,我们这些手下可就烦了,每天总会忘,
你说吃饭闪人时候还会记得点击一下电脑????以前走到门口总会刷一下卡的,至少不会忘
哎~~~~某人又要因为忘记登记,一天又要白干了。。。。
于是乎~~~~~我就不啰嗦了。。。
上网搜了个通达OA2008安装好仔细分析了一下,
- 该系统主要是用cookie进行验证身份
- 其C/S程序登录接口是Webroot/ispirit/login.php页面,该页面负责身份校验
- 提交页面是Webroot/ispirit/MyOA.php,表单内容为UserName,PASSWORD(各版本有可能不同)
可行性分析,既然OA精灵能进行登录、发邮件,自然一切皆有可能。。。
网络Search后,发现HttpWebRequest、HttpWebResponse、CookieContainer这三个东东有点用,嘿嘿
看我用代码道来:
Code
考勤提交页面是Webroot/general/attendance/personal/duty/submit.php
如果上班设为第1次考勤,那么超链接为Webroot/general/attendance/personal/duty/submit.php?REGISTER_TYPE=1
第二、第三次依次类推
Code
个人信息保存在注册表,这个又用到.Net操作注册表了
个人信息保存在注册表,这个又用到.Net操作注册表了
至于何时运行程序,用系统自带的计划任务就行了 ,
关于C/S程序模拟Http请求的相关代码,在我先前的随笔中的.Net功能类库中进行了初步封装
核心思想尽在于此。。。。
O(∩_∩)O哈哈~