由电脑缺扫雷游戏想到的: 如何把自己的.exe放到系统中?
2012-12-06 20:48
295 查看
在Windows中,有自带的扫雷游戏,但有的电脑上没有,怎么办呢?从另外电脑上把winmine.exe复制过来就可以了,下面不谈扫雷游戏,而谈如何把自己做的日历变成Windows操作系统的一部分.
编译链接下面的程序,生成myCalendar.exe
将myCalendar.exe复制到C:\WINDOWS\system32 目录下,这样在"开始","运行"中就可以直接输入myCalendar(或myCalendar.exe)打开了. 但是点击"开始","所有程序","附件", 依然没有发现有myCalendar.exe呢.
继续,在C:\Documents and Settings\Administrator\「开始」菜单\程序\附件 目录下右键创立快捷方式,得到:
![](http://img.my.csdn.net/uploads/201212/06/1354797838_5954.jpg)
在其中填写:C:\WINDOWS\system32\myCalendar.exe, 然后点击"下一步","完成". 一切OK.
点击"开始","所有程序","附件", 便有了myCalendar.exe的显示,跟"计算器"在同一列中, 如下:
![](http://img.my.csdn.net/uploads/201212/06/1354798212_5765.jpg)
这样就可以认为, myCalendar.exe变成了Windows的一部分.
编译链接下面的程序,生成myCalendar.exe
#include<stdio.h> #include<windows.h> // 用了windows.h就不要用自定义的BOOL(而用MY_BOOL) // 否则冲突. typedef enum{MY_FALSE, MY_TRUE} MY_BOOL; // 提示用户 void remindUsers() { printf("This is a calendar!\n"); printf("Input a year(year >= 1990)!\n"); printf("Press the key Enter afterwards!\n"); } // 获得年份(year >= 1990) int getYear() { int year; while(1) { scanf("%d", &year); if(year >= 1990) return year; printf("The year should not be before 1990.\n"); } } // 闰年判断 MY_BOOL isLeapYear(int year) { if((0 == year % 400)|| (0 == year % 4 && 0 !=year % 100)) return MY_TRUE; return MY_FALSE; } // 一个月的天数(其中2月跟年份有关) int daysInMonth(int year, int month) { switch(month) { case 2: if(isLeapYear(year)) return 29; return 28; case 4: case 6: case 9: case 11: return 30; default: return 31; } } // 返回第year年,第month天的第一天是星期几 int firstDayOfMonth(int year, int month) { int weekday = 1; // 1990年第一个月第一天刚好是:星期一 int i; for(i = 1990; i < year; i++) // 不是i <= year { // 先把year作笼统处理 weekday = (weekday + 365) % 7; // 如果是leap year,需要做特殊处理 if(isLeapYear(i)) weekday = (weekday + 1) % 7; } // 处理完year后,要处理month for(i = 1; i < month; i++) // 不是i <= month weekday = (weekday + daysInMonth(year, i)) % 7; return weekday; } // 缩进 void indentFirstLine(int weekday) { int i; for(i = 0; i < weekday; i++) printf(" "); } // 生成一个月的日历 void printCalendarMonth(int year, int month) { int weekday, days, i; printf(" %d %d\n",year,month); printf(" Su Mo Tu We Th Fr Sa\n"); days = daysInMonth(year, month); weekday = firstDayOfMonth(year, month); indentFirstLine(weekday); // 缩进 for(i = 1; i <= days; i++) { printf(" %2d", i); if(6 == weekday) printf("\n"); // 星期六后换行 weekday = (weekday + 1) % 7; } if(0 != weekday) printf("\n"); } // 生成一年的日历 void printCalendar(int year) { int month; for(month = 1; month <= 12; month++) { printCalendarMonth(year, month); printf("\n\n"); } } // top-down design and bottom-up implementation int main() { int year; remindUsers(); year = getYear(); printCalendar(year); system("pause"); return 0; }
将myCalendar.exe复制到C:\WINDOWS\system32 目录下,这样在"开始","运行"中就可以直接输入myCalendar(或myCalendar.exe)打开了. 但是点击"开始","所有程序","附件", 依然没有发现有myCalendar.exe呢.
继续,在C:\Documents and Settings\Administrator\「开始」菜单\程序\附件 目录下右键创立快捷方式,得到:
![](http://img.my.csdn.net/uploads/201212/06/1354797838_5954.jpg)
在其中填写:C:\WINDOWS\system32\myCalendar.exe, 然后点击"下一步","完成". 一切OK.
点击"开始","所有程序","附件", 便有了myCalendar.exe的显示,跟"计算器"在同一列中, 如下:
![](http://img.my.csdn.net/uploads/201212/06/1354798212_5765.jpg)
这样就可以认为, myCalendar.exe变成了Windows的一部分.
相关文章推荐
- 由电脑缺扫雷游戏想到的: 如何把自己的.exe放到系统中?
- 如何为自己的windows 8系统的电脑更换锁屏壁纸
- 32位、64位、以及如何得知自己的电脑是否支持64位的系统
- 如何在别的电脑上用自己的系统------在移动硬盘上装win10
- 如何正确从windows系统(自己电脑)远程访问Linux系统(他人电脑)的mysql数据库(图文详解)
- 如何查看自己电脑系统的安装日期-Window上
- 如何查看电脑是32位的(X86)还是64位的(X64),如何知道自己的硬件是否支持64位系统?
- 如何查看自己电脑系统的安装日期-Window上
- Win7 系统如何把自己电脑当作WiFi热点(不用Connectify软件)
- 由成幻OnlineJudge学习如何做自己的Acm-Icpc在线评判系统-目录
- 如何让自己的笔记本电脑成为WiFi热点
- 预装Windows 8系统的电脑如何划分更多的磁盘分区
- 不懂win10重装win7?0基础教你自己动手重装电脑系统!
- 如何确定恶意软件是否在自己的电脑中执行过?
- 如何定义自己的线程函数与第三方系统兼容
- 如何贴加自己的应用程序到WINCE内核中,并且随系统启动而启动!
- 一步步教你如何用疯狂.NET架构中的通用权限系统 -- 分布式管理(每个公司管理每个公司自己的数据)
- 如何让自己的app尽量不被系统杀死
- 如何查看自己电脑的CPU是几核