资源简介

这个是我在网上找到的一份关于修改系统时钟的源码,功能类似于驱动人生公司出版的人生日历,代码非常有参考价值,至少照着他的源码hook了系统时钟窗口的消息,以及修改绘制,截取按键消息,主要参考代码在source/dll/目录下

资源截图

代码片段和文件信息

/*-------------------------------------------------------------
  alarmstruct.c : load and save ALARMSTRUCT
  (C) 1997-2003 Kazuto Sato
  Please read readme.txt about the license.
  
  Written by Kazubon Nanashi-san
---------------------------------------------------------------*/

#include “common.h“

/* Globals */

void LoadAlarm(PALARMSTRUCT pAS int count);
void SaveAlarm(const PALARMSTRUCT pAS int count);
void SetAlarmTime(PALARMSTRUCT pAS);

/* Statics */

static void ParseAlarmFormat(char* dst const char* src int first int last);
static void ParseAlarmFormatSub(int *n1 int *n2 int *n3 BOOL *asta
const char* part);

/*------------------------------------------------
  read settings of Alarm
--------------------------------------------------*/
void LoadAlarm(PALARMSTRUCT pAS int count)
{
int i;
char subkey[20];

for(i = 0; i < count; i++)
{
wsprintf(subkey “Alarm%d“ i + 1);

memset(pAS + i 0 sizeof(ALARMSTRUCT));

GetMyRegStr(subkey “Name“ pAS[i].name BUFSIZE_NAME ““);
pAS[i].bEnable = GetMyRegLong(subkey “Alarm“ FALSE);

GetMyRegStr(subkey “Hour“ pAS[i].strHours 80 ““);
GetMyRegStr(subkey “Minute“ pAS[i].strMinutes 80 ““);
GetMyRegStr(subkey “WDays“ pAS[i].strWDays 80 ““);

pAS[i].second = GetMyRegLong(subkey “Second“ 0);

GetMyRegStr(subkey “File“ pAS[i].fname MAX_PATH ““);
pAS[i].bHour12 = GetMyRegLong(subkey “Hour12“ TRUE);
pAS[i].bRepeat = GetMyRegLong(subkey “Repeat“ FALSE);
pAS[i].bblink = GetMyRegLong(subkey “blink“ FALSE);
pAS[i].bBootExec = GetMyRegLong(subkey “OnBoot“ FALSE);
pAS[i].bInterval = GetMyRegLong(subkey “Interval“ FALSE);
pAS[i].nInterval = GetMyRegLong(subkey “IntervalMinutes“ 0);

SetAlarmTime(pAS + i);
}
}

/*------------------------------------------------
  save settings of Alarm
--------------------------------------------------*/
void SaveAlarm(const PALARMSTRUCT pAS int count)
{
int i;
char subkey[20];

for(i = 0; i < count; i++)
{
wsprintf(subkey “Alarm%d“ i + 1);

SetMyRegStr(subkey “Name“ pAS[i].name);
SetMyRegLong(subkey “Alarm“ pAS[i].bEnable);
SetMyRegStr(subkey “Hour“ pAS[i].strHours);
SetMyRegStr(subkey “Minute“ pAS[i].strMinutes);
SetMyRegStr(subkey “WDays“ pAS[i].strWDays);
SetMyRegLong(subkey “Second“ pAS[i].second);

SetMyRegStr(subkey “File“ pAS[i].fname);
SetMyRegLong(subkey “Hour12“ pAS[i].bHour12);
SetMyRegLong(subkey “Repeat“ pAS[i].bRepeat);
SetMyRegLong(subkey “blink“ pAS[i].bblink);
SetMyRegLong(subkey “OnBoot“ pAS[i].bBootExec);
SetMyRegLong(subkey “Interval“ pAS[i].bInterval);
SetMyRegLong(subkey “IntervalMinutes“ pAS[i].nInterval);
}
}

/*------------------------------------------------
  strHours -> hours strMinutes -> minutes
  strWDays -> wdays
--------------------------------------------------*/
void SetAlarmTime(PALARMSTRUCT pAS)

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       8600  2004-05-12 22:28  tclocklight-040702-3\lang\tclang-de.txt

     文件       9020  2004-05-24 23:24  tclocklight-040702-3\lang\tclang-el.txt

     文件      10252  2004-05-24 23:38  tclocklight-040702-3\lang\tclang-es.txt

     文件       8975  2004-04-24 22:43  tclocklight-040702-3\lang\tclang-fr.txt

     文件       8865  2004-04-24 22:49  tclocklight-040702-3\lang\tclang-it.txt

     文件       8028  2004-09-07 17:37  tclocklight-040702-3\lang\tclang-ja.txt

     文件       7915  2004-05-09 21:37  tclocklight-040702-3\lang\tclang-ko.txt

     文件       8654  2004-07-27 22:29  tclocklight-040702-3\lang\tclang-nl.txt

     文件       8815  2004-05-10 22:09  tclocklight-040702-3\lang\tclang-pl.txt

     文件       8452  2004-06-10 12:03  tclocklight-040702-3\lang\tclang-pt.txt

     文件       8392  2004-06-15 22:21  tclocklight-040702-3\lang\tclang-ru.txt

     文件       8472  2004-05-24 22:56  tclocklight-040702-3\lang\tclang-tr.txt

     文件       7666  2004-05-17 23:10  tclocklight-040702-3\lang\tclang-zh-cn.txt

     文件       7904  2004-05-09 21:36  tclocklight-040702-3\lang\tclang-zh-tw.txt

     文件       8234  2004-06-10 11:58  tclocklight-040702-3\lang\tclang.txt

     文件        505  2004-05-11 11:06  tclocklight-040702-3\lang\tcmenu-de.txt

     文件        653  2004-05-24 13:01  tclocklight-040702-3\lang\tcmenu-el.txt

     文件        538  2004-05-23 20:24  tclocklight-040702-3\lang\tcmenu-es.txt

     文件        550  2004-04-24 22:37  tclocklight-040702-3\lang\tcmenu-fr.txt

     文件        635  2004-04-24 22:37  tclocklight-040702-3\lang\tcmenu-it.txt

     文件        478  2004-04-17 23:13  tclocklight-040702-3\lang\tcmenu-ja.txt

     文件        459  2004-05-09 20:49  tclocklight-040702-3\lang\tcmenu-ko.txt

     文件        508  2004-07-27 21:54  tclocklight-040702-3\lang\tcmenu-nl.txt

     文件        515  2004-05-10 11:36  tclocklight-040702-3\lang\tcmenu-pl.txt

     文件        490  2004-06-10 11:51  tclocklight-040702-3\lang\tcmenu-pt.txt

     文件        492  2004-06-15 22:13  tclocklight-040702-3\lang\tcmenu-ru.txt

     文件        474  2004-05-24 22:34  tclocklight-040702-3\lang\tcmenu-tr.txt

     文件        435  2004-05-15 15:52  tclocklight-040702-3\lang\tcmenu-zh-cn.txt

     文件        454  2004-05-09 20:45  tclocklight-040702-3\lang\tcmenu-zh-tw.txt

     文件        477  2004-05-09 21:53  tclocklight-040702-3\lang\tcmenu.txt

............此处省略146个文件信息

评论

共有 条评论