欢迎使用帮助文档

返回目录  许可协议  名词解释  问题解答  日志  致谢

许可协议

新疆博乐86团范围内使用,自动获得许可;
1.0版本免费使用,更多请登录基础教程网

著作权所有,您可以自由拷贝、传播和使用,但必须保证软件完整性,

使用本软件属于您个人自愿,作者不提供任何明示的或暗示的担保,商业用途请与作者联系;
美丽的校园…… 


长江后浪推前浪,自古英雄出少年;
三更灯火五更鸡,正是男儿用功时;
梅花香自苦寒来,宝剑锋从磨砺出;
莫愁前路无知己,天下谁人不识君?

日志  返回  名词解释  问题解答  致谢  许可协议
20:01 2004-7-27
今天开始动手编windows窗口编程的教程,想一想还是早早动手,要不又偷懒了;
完成基础课程0的制作,认识VC++6的窗口;
19:04 2004-7-28
考虑一番,完成基础课程1的制作,VC++的使用,再加入一个小程序,用7-Zip压缩备份到F:盘上;
20:02 2004-7-29
把调试过的源程序拷入,还得修改格式,缩进,颜色什么的有些麻烦;
完成基础课程2的制作,一个简单的完整窗口,每天上午学习下午做课程一天一课,
一点一滴的操作积累,还需要一些最基本的C++编程知识,变量、赋值、标识符、基本语句,以后编一个C++的基础教程;
21:57 2004-7-30
完成第1课的制作,使用图标,学习有关资源的使用;
标识符有时可以用,有时又得用值,细心找一找规律;
9:58 2004-7-31
//看来计划要修改一下,早上大意粗心,书给丢了,看来路不拾遗,得放在路上才行(做悻悻状);

还有鼠标,键盘,对话框,位图,画点,菜单,光标,画线,文本
19:24 2004-7-31
完成第2课使用鼠标编程的制作,看来还有点儿难度;
前面的课程加入几个图片,修改几个可执行文件,加入版本以及图标
12:35 2004-8-1
给前面几课加入几个图片,把代码的颜色加上;
完成第3课鼠标指针的制作,外部添加资源文件还是个问题,最后的版本消息有点儿麻烦,最后只好全部用菜单加入;
如果用插入菜单添加资源会自动生成一个Resource.h,里面会自动加上标识符的申明,跟自定义的头文件申明对不上;
12:57 2004-8-2
完成第4课输出文本的制作,更深的到MFC里使用简洁的操作;
19:05 2004-8-2
将第5课的框架设计出来,源程序也编制好,下一步就是课程;
18:25 2004-8-3
完成第5课加载图片的制作,调试的时候发现,从网页拷贝到来的头文件标识符,会提示“fatal error RC1004: unexpected end of file found”,
费了几个脑细胞; 
19:44 2004-8-5
完成第6课创建菜单的制作,停了一天电,耐心地等待
22:45 2004-8-6
完成第7课键盘输入的制作,中文发送两条消息,用英文即可;
18:12 2004-8-8
添加版本资源需要#include "afxres.h"
21:48 2004-8-8
完成第9可绘制直线的制作,擦画的代码要费点脑细胞,再作一课就可以告一段落;
12:28 2004-8-9
对话框的代码完成,还需要调试一下;
23:38 2004-8-9
完成第10课对话框的制作,这样就完成了基础教程的制作,意犹未尽?还有很多要学习的知识。
明天开始后期制作,测试、压缩、封装,制作一个安装软件。
生成第一版;
19:31 2004-8-10
完成内部测试版α1,加入几个小图片,保持语句前后一致,准备帮助的名词解释;
21:35 2004-8-10
加入说明,还有许可协议,图片压缩一下,清除临时文件,
17:42 2004-8-11
重新转换图片为GIF,果然小了许多,以前怎么没想到?看来PhotoShop还是挺不错的;
生成测试版α2,去掉FrontPage生成的临时文件夹;
压缩文档只有300多KB,很好;
19:40 2004-8-12
潜心钻研Nullsoft Scriptable Installation System安装文件制作系统,成功地完成了安装软件的制作;
23:39 2004-8-12
完成NSIS的简体中文界面,但是在加入版权时出现乱码,没有使用正确的语言,中文是2052,代码页936
17:27 2004-8-13
使用多国语言文件,只加载中文语言包,解决乱码问题,准备进行用户β测试;
21:28 2004-8-14
完成用户测试,代码顺利通过,加入一些小图片,修改一些句子;

重新编写帮助,改成网页格式,使用书签作为超级链接;

9:36 2005-4-11
  构建1.0.0版本,免费、其他呢?为什么出来一个1.0.0,?

  Q:1.0是什么意思?

  A:入门版、包括基础课程和10课正式课程,致谢所有帮助过我的人和提供给想入门Flash动画的人的免费版本;

  Q:为什么1.0免费?

  A:取之于民,用之于民,教育需要每个人都来关心、支持、做贡献,我是一名教师,一个崇高而又无奈的职业;

  Q:为什么收费?

  A:免费课程侧重于普及、分享、入门,10课以后需10元注册,作为学习的动力和对作者劳动的支持;

  Q:做软件有什么体会?

  A:先是充满好奇和诱惑,然后埋头苦学、生怕学不会,然后跃跃欲试做出一些自己才会用的东东,

然后想到对别人也会有所帮助的;


§告一段落§    返回 
名词解释  问题解答  日志  许可协议

……
名称:VC++基础入门教程
版本:1.0.0
运行:Win9x/2000/XP
授权:免费
邮箱:TeliuTe@163.com
学校:新疆博乐八十六团学校
简介:一步一步教你学会Visual C++编程,带你步入Windows视窗的广阔天地; 
特别感谢:
Microsoft Visual C++6.0 创天中文版;
Microsoft Frontpage2000 中文版;
Nullsoft Install System 2.0b4
红蜻蜓抓图精灵2003 1.13 build 0815
紫光拼音输入法 R3.0;
Adobe PhotoShop7.0.1 中文版; 
7_Zip文件压缩管理器3.11 

清华大学出版社《Windows C程序设计入门与提高》

电子工业出版社《Visual C++实例教程》

清华大学出版社《C++程序设计实用教程》


教程系列:
『VC++基础入门教程』Flash MX教程 3D_Max教程 电脑入门教程 Flash教程 VB教程 蒙泰瑶光教程

名词解释:    返回  问题解答  日志  致谢  许可协议
10:14 2004-8-10
!是非运算,得到一个布尔(BOOL)条件值,逻辑真TRUE或假FALSE;
标识符是用来表示一个函数、一个变量、一个对象的名称;
hWndMain是主窗口句柄,句柄是Windows窗口的唯一标识值;
hInstance是实例句柄,实例是由根据一个类生成的对象;
NULL是空值表示这一项空缺;
#include是包含预处理命令,在主函数运行之前完成;

<>用尖括号包含的是系统头文件,用双引号的是用户的头文件;
WinMain是主函数,每个Windows程序都有一个主函数;
Windows.h是头文件,里面有各个函数的申明,申明后才能使用;
HWND是窗口句柄变量类型,大写是VC使用的保留字,小写是C++的;
//是注释,绿色的不会执行的代码,蓝色的表示C++的保留字;
APIENTRY是使用API函数的调用方式,API是一些Windows底层操作函数;
{ }是一个逻辑语句体,每一句代码用分号结束,而不是回车键;
return是函数返回值,函数运行到这儿就结束,不管后面有没有代码;
switch是分支语句,用来处理消息,MFC中改为消息映像;
MSG消息是传递事件的一种结构,指出事件的性质;
LRESULT是消息结构类型,一般用在MainWndProc函数过程;
HDC是设备描述表,设备使用前要先申请;
lstrlen 是统计一个字符串的字符数;
POINT是结构类型,包括两个成员(x,y)刚好表示一个点;
错误及解决   返回 
名词解释  日志  致谢  许可协议
一、
1、忘记在main函数后面加上括号了,两个编译错误
2、忘记定义CClientDC dc(this)这个绘图的对象,没法调用画图方法;
3、把LineTo方法错误写成MoveTo方法,画不出线来;
4、在判断初始位置的if语句中漏掉一个},不可预料的结束;
5、忘记初始化划线初始位置,程序一运行就开始划线;
6、大小写错误应该是hWnd: 'hwnd' : undeclared identifier
7、输入错误应该是case: 'cass' : undeclared identifier 
二、
1、在输入.后,应该出现一个列表如果没有出现就有错误;
2、类定义应该有两个冒号,只输入了一个,所以错误;
3、在工程设置中需要使用MFC才行,否则出现运行错误(unresolved external symbol __endthreadex);
4、InitInstance的第一个字母小写错误;
5、兼容失败,不能使用GetStockObject(WHITE_BRUSH),前面加上MAKEINTRESOURCE()
6、将wc错误输入为mc,未申明的标识符错误;
7、USEDEFAULT的D给漏了输入;
8、HWND hWnd的空格忘了输入,连在一起了;
9、使用没有申明的变量;
10、语句行后漏掉分号;
11、错误的使用中文分号标点;
12、if语句中的大括号漏了,出现未定义变量
13、忘记分号;
14、申明当中缺了一个参数,后面定义对不上InitInstance(HINSTANCE,int)
15、多打了一个a,应该上GetMessage:'GetMessaage' : undeclared identifier
16、大小写错误:应该是hbrBackground: 'hbrbackground' : is not a member of 'tagWNDCLASSEXA'
17、字母次序错误应该是FALSE:'FLASE' : undeclared identifier
18、偷懒的错误复制粘贴蛇足:应该是IDM_ALIGNLEFT,输入是IDM_EDIT_ALIGNLEFT : undeclared identifier
19、大小写错误应该是CheckMenuRadioItem: 'checkMenuRadioItem' : undeclared identifier
20、大小写错误应该是hWnd: 'hwnd' : undeclared identifier
21、括号没有配对, syntax error : missing ')' before ';'
22、输入错误标点,应该是分号: syntax error : missing ':' before ';'
23、错误的锁定大写字母键, 'BfONTsTYLE' : undeclared identifier
24、输入错误应该是MF_UNCHECKED: 'MF_UNCHECDED' : undeclared identifier
25、输入错误,应该是IDM_LARGEFONTSIZE:'IDM_LARGEFONTSEZE' : undeclared identifier
26、大小写错误应该是hWnd: 'hwnd' ,44个错误;
27、MessageBox的一个参数必须写到一行,放到下一行就错误一大堆,
28、前面的参数表错误,应该是lParam:'LParam' undeclared identifier
29、错误的大写字母锁定键,应该是MF_BYPOSITION 'MF_bYPOSITION' : undeclared identifier
(紫光拼音中输入一半大写字母再按大写锁定键就错误的输入条,按一下Shift键就可以去掉输入条;)
30、输入完成后编译通过,运行无反应,检查后原来是ShowWindow(hWndMain,nCmdShow)参数写成了hWnd,漏了Main;
31、Bitmap.obj : error LNK2001: unresolved external symbol "int __cdecl InitInstance(struct HINSTANCE__ *,int)" (?InitInstance@@YAHPAUHINSTANCE__@@H@Z)
三、    返回 
名词解释  日志  致谢  许可协议
1、出现错误时候,看一下工具栏下面的函数栏可以定位错误的函数名称;
2、热点的按钮在工具箱的左上角一个发光的鼠标指针按钮
3、用MAKEINTRESOURCE将图标的标识符改为标识号;
4、导入的文件要用添加到工程命令加入到控制台里头,再进行编辑;
5、还要将头文件Resouce.h包含到主文件CwinApp.cpp当中;
6、在定义窗口类里头少了一句装载鼠标指针的语句,结果就自动退出,没有成功的返回真值,
7、装载一个小图标,但是还是32×32位的,使用新建按钮,然后选择16×16;
8、在资源文件*.rc中定义的资源标识符,找不着在*.h中的申明,只好在把*.h包含一下,又出现重复定义标识符;
9、在*.rc中输入代码,在资源控制台就会出现相应的资源,如果错误还可以提示,并直接修改代码;
10、错误的输入style大写和拼写错误: SYTE;
11、错误的输入WS_OVERAPPEDWINDOW,多了一个N:WS_OVERAPPENDWINDOW;
12、错误的输入PAINT,少了一个T:PAIN;
14、错误的输入PAINT,最后的小写T:PAINt;
15、漏了变量的申明,UINT fIsNight=0;
16、错误的输入TextOutOhdc,第二个O应该是(;
17、错误的输入TextDlg1proc,p应该是大写的P;
18、少了一个{,然后就少了一个过程,而且括号也不能配对;少了一个),两个),只输入了一个;
19、漏了一个空格,HWND hDlg,中间连成一块了
20、多了一个括号,(LOWORD)(wParam),出现少了“;”提示;
四、    返回  
名词解释  日志  致谢  许可协议
1、在输入对话框的时候,使用了1,2等数字,结果老是提示没有定义的标识符,
改的时候,还要在.h文件中修改原型;
2、前面申明变量的时候漏了一个字母,后面就无定义调用;
3、for括号循环里的分号老是被逗号干扰;
4、在InitAppction中定义的窗口类名称和Initstance中不同,就会出现编译没错误,就是不显示窗口
可以在主窗口WinMain调用的句子里加入一句提示if(!InitAppCtion)
5、几个包含文件的嵌套老是错误,主程序要包含主程序同名的.h文件,
6、在资源文件.rc中还要包含resource.h,window.h,同名.h文件,
7、自定义的光标加不进去,先是出现忙,然后是左右箭头,最后变成默认箭头,换一个加载语句;
8、用MAKEINTRESOURCE(int)来调用已经#include的光标资源;
9、一重新编辑图标资源Resouce.rc中的 #include "rcDialog.h"就会就会丢失
10、利用“自定义”工具栏,可以定制自己的命令,在“定制”对话框的“命令”标签的“分类”里头
选择“所有命令”,然后将右边的命令拖到工具栏上,或者把工具栏上的命令拖进来;
11、打开工作区和关闭工作区在最后头的英文单词;(WorkSpace Open),&号不要也行,
12、如果一个在主窗口显示的位图设备表,定义成了局部变量,会产生一个警告,
然后在主窗口中调用其他窗口后图像会消失;
13、只能加载一幅图片,原来是少了一句EndPaint(hWndMain,&ps);,加上以后就可以了显示两幅图片了;
14、使用缩进格式,变量名用大小写,两段之间加空行,变量后面加上用处的注释;
15、使用通用的语句,T是变量,
16、申明过的函数在输入.或括号后应该出现提示,否则有可能拼写错误;
17、中文不用时就关掉;
18、系统的标识符输入后会变蓝色,否则有可能拼写错误;
19、对付错误从两头向中间突破;
20、当一个变量出现'nCmdShow' : undeclared identifier的时候,可能是在前面()内申明的拼写错误
五、    返回  
名词解释  日志  致谢  许可协议
1、在Win2000/XP用结束进程树结束无法停止的程序
2、用以前正确的代码替换,可能错误的代码,然后一句一句的对照,总可以找出错误来,也许就一点点错误
3、在适当的位置加入MessageBox语句,用来判断某一句是否能够执行过去;
4、如果怀疑某一个句柄参数有问题可以用if(!hWnd){::MessageBox(...)}来测试一下,直接显示就好了;
5、加入图标,在插入图标后,用过程加入*.rc文件,然后打开resource.h,把图标的标号,用MAKEINTRESOURCE(标号)
6、在判断初始位置的if语句中漏掉一个},不可预料的结束;
7、忘记初始化划线初始位置,程序一运行就开始划线;
8、在输入.后,应该出现一个列表如果没有出现就有错误;
9、类定义应该有两个冒号,只输入了一个,所以错误;
10、在工程设置中需要使用afxres.h才行,否则出现运行错误(unresolved external symbol __endthreadex);
11、、如果按回车键后本来对齐的一行,向内缩进一段,说明漏了分号
12、在.rc的对话框定义中少了一句 CONTROL "",IDC_STATIC,"Static",SS_BLACKFRAME,40,34,56,1
结果就来了一句 fatal error C1057: unexpected end of file in macro expansion
13、少了一个配对的双引号",结果就是 error C2001: newline in constant
14、TextOut放在WM_CREATE消息中好像有问题
15、在.rc文件的对话框创建的CONTROL “SUN”,IDC_SUN,"Static",SS_BITMAP,11,10,11,11
后面少了一个逗号,就出现error C2143: syntax error : missing ';' before 'PCH creation point'
16、少了一个分号;就出现D:\VC++\Timer\Temer.cpp(6) : error C2146: syntax error : missing ';' before identifier 'UINT'
没有结束的分号,往往出现一些莫名其妙的错误
17、每次使用图标和光标都得用MAKEINTRESOURCE(100)来转换,应该有个简便的方法才对
18、插入一个版本资源就可以添加版本信息;
19、蓝色、绿色都是不同的代码;resource.h文件跟自定义的头文件*.h老是在标识符定义上冲突,
20、修改资源文件后保存一下就可以更新Resource.h文件,然后就可以看看里面的标识符的值
六、   返回  
名词解释  日志  致谢  许可协议
1、用添加到工程命令把别的文件夹的文件加入后要另存为自己文件夹,
然后把上次添加的别的文件夹的文件还要从工程中删除掉,否则无法编译;
2、有时候会将InitApplication里头少输入一句,造成外部符号无评价,在WinMain里头加一句判断就可以了;
3、在资源的标识符上加上双引号有时就可以在源代码中使用标识符,但是有时还得使用值;
4、使用记事本编写.rc时候,要使用版本资源,记着得加上这一句#include "afxres.h"
5、有时候程序进入死循环无法退出,这时Win98里可以用结束任务来结束这个程序,
在Win2000/XP里可以用任务管理器里头结束进程,来退出程序
6、加载图标时可以用(NULL, ),而加载鼠标指针时就得(hInstance, );
7、用Go命令继续向下执行程序,跳出调试状态
8、从外面粘贴来的头文件会出现error C2018: unknown character '0xa1'表现是一个空白,删掉重新输入;
9、用字符串数组strlen()算出的数组是一个无符号的整数;

本教程由86团学校TeliuTe制作|著作权所有,商业用途请与作者联系

美丽的校园……    

返回目录   返回页首  名词解释  问题解答  日志  致谢  许可协议



转载和引用本站内容,请保留版权信息和本站链接。