《VC编程技巧280例》PDF下载

  • 购买积分:14 如何计算积分?
  • 作  者:源江科技编著
  • 出 版 社:上海:上海科学普及出版社
  • 出版年份:2002
  • ISBN:7542719424
  • 页数:427 页
图书介绍:Visual C++是一种最简单、最易入门的Windows环境下的编程工具,也是最流行的编程工具。但是当一个VC爱好者想要进一步提高、编制商业应用软件时,他可能常会有不知所措之感,因为有许多编程技巧他没有掌握和发现。我们花费了极大的精力来收集、编写和整理大量的VC编程技巧及实例,并提供给读者,衷心希望能对读者的编程水平和技术有一些帮助。本书共分为十章,包括:数据库、动态连接库、文件、窗体、图形图像、多媒体、网络、控件、系统及其他。书中实例使用Visual C++6.0编制,主要是一些常用技巧和方法。程序员如果不及时理解和掌握这些常用技巧和方法,会给编程和开发带来很大障碍。本书基于这样的出发点,突出实战技巧,整理和编写了常用的极具价值的280例技巧,希望能够使得程序员的开发工作变得事半功倍。

第1章 数据库 1

1.ODBC中的同步与异步执行模式 1

2.从数据库中读大于32KB的内容 3

3.基于ActiveX的多通道数据曲线编辑控件的实现 4

4.基于MFC的大型数据文件处理方法 6

5.如何定位到最新的记录上 7

6.如何用VC++和VisualFoxPro进行ActiveX数据通信 7

7.网格控件的使用方法 10

8.用MFCDao查找 11

9.用VC++给FoxBASE数据库文件加密 12

10.在VC++中建立自定义数据库类 13

11.在程序中动态创建并修改BDE别名 16

12.直接调用DAO 18

13.使用ADO执行存储过程 18

14.在VisualC++中用ADO进行数据库编程 20

15.如何得到系统可用的全部数据源 23

16.用VC处理Access中的位图数据 23

17.如何在一个程序操作多个FoxPro2.5数据库 25

18.如何使用ADO调用带参数的存储过程 27

19.如何通过ODBC访问Excel表的内容 28

20.在前台DOS环境下直接调用后台的MSSQLServer7.0 28

21.用VC存取数据库中的大对象 30

22.在动态集中使用虚拟CListView 32

23.在AccessDB中存储“画笔”图像 36

24.在普通程序中添加ODBC应用 37

第2章 动态链接库 40

25.调用在DLL中的一个图标 40

26.DLL中的模板成员函数 40

27.Win32全局钩子在VC6中的实现 41

28.纯资源DLL的编写 47

29.调用16位DLL 48

30.关于VC中的DLL的编程 48

31.利用DLL增强软件功能 52

32.为什么DLL在字符串表中找不到字符串 54

33.用VC++6.0定制和调用动态链接库 55

34.用VC++6.0制作DLL经验一二 57

35.在VisualC++中建立MFC扩展DLL 60

36.怎样从MFC扩展动态链接库(DLL)中显示一个对话框 62

37.得到关于DLL/EXE模块的完整信息 63

38.显示已加载的动态链接库 64

39.在DLL中使用扩展的DLL 65

第3章 文件 66

40.DirTreeCtrl——显示文件夹和文件 66

41.在文件对话框里实现选择多个文件 68

42.编译不同语言版本的资源文件 70

43.Unicode格式和纯文本格式的相互转换 71

44.VC++程序中用对话框的形式显示HTML文件 72

45.VC++中如何遍历整个目录树查找文件 73

46.WAVE文件格式剖析 76

47.创建快捷方式 77

48.利用DLL在程序中实现文件拷贝 78

49.如何知道一个文档已经改变 80

50.删除目录及目录下所有文件与子目录 81

51.使用CfileRead 82

52.以不同的格式保存文件 82

53.用VisualC++6.0递归查找目录树 83

54.在Win95中实现文件拷贝的编程方法 84

55.如何创建多级目录 87

56.怎样得到程序的当前路径 87

57.如何查找目录 88

58.如何用VC6.0的SDI实现两个文档模板 89

59.在VisualC++6.0环境下浏览目录对话框的设计 90

60.剖析VC中的文件操作 94

第4章 窗体 98

61.“气球式”工具提示 98

62.ShowWindow()函数 98

63.VC++动态加入和删除菜单的方法 100

64.VC6中两个对话框的同时显示 102

65.VC里的projectpanel窗口如何实现 103

66.VisualC++中建立滚动视窗 105

67.在VC++中利用消息制作启动封面 107

68.测试鼠标是否在窗口内以及鼠标的离开 109

69.多边形窗口 111

70.非模态对话框浮在最上面 112

71.分隔窗口 112

72.改变MDI客户窗口背景的方法 113

73.改变对话框的背景色 114

74.改变工具提示框的宽度 116

75.关于切分窗口的问题 117

76.模态对话框与WM_TIMER消息 117

77.也谈无标题窗口的拖放 118

78.如何创建一个不规则形状的窗口 118

79.如何访问桌面窗口 121

80.如何获取有关窗口正在处理的当前消息的信息 121

81.如何建立一个带滚动条的窗口 121

82.如何设置窗口背景图 122

83.如何在FORMVIEW中生成CBitmpButton按钮 122

84.如何在VC6.0下定制多媒体真彩封页 123

85.改变MFC默认文档操作方式 126

86.透明窗口的显示 127

87.用VC++实现异形窗口 129

88.在VC++中定制CFileDialog 130

89.创建不在任务条中显示窗口按钮的应用 132

90.VC限制窗口大小又一法 133

91.在VC++6.0开发中实现全屏显示 133

92.让基于对话框的应用程序有启动画面 136

93.直接在程序中更改显示模式 137

94.利用VC6.0捕捉屏幕“热点” 138

95.改变MDI客户窗口背景的方法 140

96.VC中如何改变对话框中控件的颜色 141

97.得到托盘区位置与动态显示/隐藏窗口 142

98.创建向导对话框 143

99.让工具栏并列显示 144

100.用VC制作动态弹出的对话框 145

第5章 图形图像 147

101.根据位图文件来绘制位图 147

102.将DIB位图写入位图文件 149

103.转换DIB位图为DDB位图 150

104.Windows98中渐变彩色文本的实现 152

105.绘制半透明位图 156

106.绘制灰度图像 158

107.绘制透明位图 160

108.镜像图像 161

109.将位图快速装载到CBitmap对象 163

110.巧用StretchBlt实现图像放大镜 164

111.如何用VC抓取屏幕图像并压缩 167

112.如何在状态条中(CStatusbarPane)加入Bitmap图 167

113.图像的3D灰度显示 170

114.显示一个DIB图片 172

115.用抖动法处理黑白位图转换 172

116.关于位图行程编码格式压缩 175

117.如何实现魔术棒的功能 176

118.怎样显示空心字 176

119.如何制作抓图程序 178

120.OpenGL如何才能正确输出中文 178

121.如何用C语言编程画曲线 180

122.怎样判断颜色C是与颜色A相近还是和颜色B相近 180

123.如何让一个圆形区域产生凸起效果 180

124.在VC下显示JPEG、GIF格式图像的一种简便方法 181

第6章 多媒体 184

125.在VC应用程序中插入微型动画 184

126.怎样用MCI打开光驱开关 185

127.大型WAV文件的播放 185

128.Windows下的动画特技——淡入淡出 190

129.VC++6.0下MIDI、WAV及CD的播放 193

130.VC调用ACM音频压缩编程接口的方法 197

131.一个控制音量大小的类 201

132.播放WAV资源 201

133.VC6.0下自制媒体播放器 202

134.VCD光盘放入光驱时,系统自动播放软件 205

135.如何消除两个音频文件混合时遇到的杂音 206

136.利用VC实现AVI文件的图像截取 206

第7章 网络 210

137.得到计算机的主机名和IP地址 210

138.发送文件到Web 210

139.分析IP地址(DDX) 211

140.使用MFC的WinInet类得到Web页 213

141.网络工具 216

142.用于简单MAPI邮件的类 218

143.Win32下的几种串口通信编程 219

144.串行通信通用接口程序设计 220

145.电话程序设计接口 222

146.服务器与客户机互传消息 223

147.截获WINSOCKET的源代码 231

148.使用MFC编写FTP程序 240

149.使用MFC开发ISAPIExtensions程序 240

150.用Activex实现串口通信 248

151.用Socket接口实现网络异步通信 249

152.用Winsock实现点对点通信 254

153.用VC++和Winsock实现与HTTP服务器通话 257

154.用VC++实现FTP的实验 259

155.用VC++实现上网拨号功能 260

156.CGI中的中文解码(C++语言版本) 262

157.如何得到形如XXX.XXX.XXX.XXX字符串形式的本机IP) 264

158.截获WINSOCKET 264

159.在应用程序中实现RAS拨号 265

160.TCP/IP网络通信程序设计 266

161.怎样知道计算机有多少个串口 269

162.设置每个发送字符的校验(标志)值 269

163.怎样用API函数登录WinNT 270

164.如何获取本机网卡的物理地址 270

165.在对话框中如何打印网页 273

166.在浏览器中改变字体 273

167.拨号上网IP地址的检知 274

168.VC命名管道通信的实现 276

169.用VC++制作一个简单的局域网消息发送工程 278

170.在计算机之间实现收发数据 280

171.VC编程改造IE浏览器 282

172.用VC实现远程修改NT账号 284

173.在VC6.0下利用消息实现内部进程通信 288

174.用VC++6.0编写拨号程序 290

175.在VC6.0中调用浏览器访问Web页面 293

第8章 控件 295

176.CCheckListBox中的水平滚动条 295

177.CTL3d简介 295

178.DDX和建立控件 295

179.VC中如何把两个Toolbar放在一个行上 296

180.创建一个能拖动能改变尺寸的控制条 296

181.从一个OCX调用另一个OCX的方法 297

182.带背景的Toolbar和ListView 298

183.动画控件 298

184.改变PushButton背景色 298

185.滚动字幕 300

186.将一个自定义控件与自定义类相关联 302

187.快速创建真彩色工具条 304

188.奇怪的组合框控件 305

189.如何让Tooltip的字体变大 305

190.如何选择CTreeCtrl中的节点文本进行编辑 305

191.如何用位图显示下压按钮 306

192.如何知道CListBox什么时候滚动了 306

193.使用图像列表设置表头图像 307

194.树型控件的TVS_SINGLEEXPAND 310

195.位图进度条 311

196.虚拟(virtual)列表控件 312

197.在VisualC++6.0中轻松实现上下控件 312

198.在工具条中使用256色位图 313

199.如何获取一个对话控件的指针 314

200.如何用VisualC++6.0在菜单中增加位图或图标 314

201.用VC++在状态栏显示时钟 315

202.制作有打字效果的状态栏 316

203.VC++环境下浮动工具条的编程 318

204.利用VC++进行工具条的显示更新 319

205.VC6.0中使用标签控件 321

206.在ComboBox中改变列表框的宽度 323

207.巧妙实现超链接控制 324

208.获得OnOK退出控制 326

209.如何改变控件的颜色 327

第9章 系统 329

210.Windows95/98下直接访问物理内存 329

211.产生线程的问题 333

212.动态创建线程 334

213.工作线程的登录状态 335

214.关于线程消息 335

215.启动和等待进程结束 336

216.让程序运行时在Windows“关闭程序”窗口中隐身 337

217.外部中止线程 338

218.应用进程对其他应用程序的调用 339

219.在用户环境中如何确定系统显示元素的颜色 340

220.怎样用程序取得CPU信息 341

221.获取快捷方式(.Ink)的目标和参数 343

222.如何在剪贴板上读写文本 345

223.如何在剪贴板上放置图原文件(用OLE) 345

224.用任务栏上的图标与用户交互 346

225.如何截获API函数 349

226.程序如何才能识别目前的操作系统环境 352

227.实战VC时间控制函数 353

228.如何处理自定义消息 355

229.如何查询和设置系统参数 356

230.如何给系统菜单添加一个菜单项 356

231.使用DDE使应用程序可以添加新的程序组 357

232.利用VC6.0编写Windows95控制面板程序 360

233.利用VC++编程实现程序自动启动 364

234.在VC++中访问和修改系统注册表 368

235.用VC修改目录的日期和时间 371

第10章 其他 374

236.C4113警告是什么意思 374

237.CFile使用了缓冲区吗 374

238.Cstring.Find()出错 374

239.C语言编程的排序方法 375

240.DAO的密码 378

241.Linux创建和使用库静态、共享和动态 378

242.MicrosoftWindows2000应用程序兼容性 380

243.RegisterWindowMessage中的BroadcastSystemMessage如何处理 384

244.VB与VC混合编程中处理消息的方法 385

245.VC++中怎样使程序自动运行 386

246.VC++编程—自定义窗口的创建MFC 387

247.VC++中STL的使用 388

248.VC6.0编译问题 389

249.VC下打印机的使用 390

250.VisualC++应用框架揭密 392

251.从CasyncsocketOnReceive消息中取得所有的数据 394

252.关于dllimport的问题 395

253.关于多线程的一些细节 397

254.如何直接读写高于1MB地址的内存 398

255.实现爆炸后的振动效果 399

256.选择一块区域的实现方法 400

257.如何让我的mfc应用程序可以在最上面 401

258.如何阻止Windows关闭 402

259.怎样才能改变光标 403

260.改变鼠标的指针 403

261.创建和访问环境变量 404

262.通过VC++实现对MATLAB的调用 405

263.VC实现对话框上信息的显示 407

264.关于VC多文档应用中OpenGL的使用 409

265.关闭属性页的帮助 411

266.利用VC++进行OpenGL程序设计 412

267.如何编辑结束应用程序 414

268.如何创建一个字回绕的CEditView 414

269.如何更新翻转背景颜色的文本 415

270.如何使用一个预定义的Windows光标 415

271.如何实现一个橡皮区矩形 416

272.使黑客无法窃取Edit框中的Password 417

273.怎样用VC限制软件的试用次数 419

274.用VC清除浏览痕迹 421

275.VC++中实现程序互斥运行 424

276.如何在VC++6.0中定义热键消息 426