欢迎访问 水平网    今天是:2017年11月22日 注册 | 登录 | 订阅 | 收藏
推荐文章
热点文章
专题
JQuery框架
Prototype.js
HTML5

VC中用DAO实现树型控件的数据库访问

  我们在进行数据库编程中,如果通过树型控件相连数据库,从而将数据库中的内容加入到树型控件中,实现数据库的访问,那么查询结构将更清晰明了,操作起来也比较方便。本实例使用上面的思路,通过DAO的方法实现了对Acess数据库的访问  一、实现方法  DAO(Database Access Object)使用Microsoft Jet数据库引擎来访问数据库。Microsoft Jet为象Access和Visual Basic这样的产品都提供了该数据引擎。与ODBC一样,DAO提供了一组API供编程使用。MFC也提供了一组DAO类,封装了底层的API,从而大大简化了程序的开发。利用MFC的DAO类,用户可以编写独立于DBMS的应用程序。  DAO是从Visual C++...
类别:C/S程序开发 - C/C++,阅读:648,更新:2014-09-15

Winsock技术在远程监控中的应用

本文根据Winsock技术及网络通信原理, 利用VC++编程技术,通过网络数据传输在客户端得到实时温度运行图形,实现了对人工气候室温度运行状况的远程监控, 满足了低成本、高效率的实时自动化要求。1 引言随着网络技术的不断发展进步,网络对整个社会产生了深远的影响。由此也出现了以网络为基础的监控管理新框架。实现基于网络的设备远程监控,成了目前计算机网络应用领域中的一个热点问题。利用套接字技术,通过Socket实现网络之间的连接和数据交换,实现对设备的远程监控,具有很好的应用前景。2 人工气候室远程监控系统的特点及实现2.1通信接口-----套接字的创建本文所要实现的是对一个小型人工气候室的远程监控,在异地或同一个局域网范围内,...
类别:C/S程序开发 - C/C++,阅读:476,更新:2014-09-15

Winsock开发网络通信程序的经典入门

  对于许多初学者来说,网络通信程序的开发,普遍的一个现象就是觉得难以入手。许多概念,诸如:同步(Sync)/异步(Async),阻塞(Block)/非阻塞(Unblock)等,初学者往往迷惑不清,只知其所以而不知起所以然。   同步方式指的是发送方不等接收方响应,便接着发下个数据包的通信方式;而异步指发送方发出数据后,等收到接收方发回的响应,才发下一个数据包的通信方式。  阻塞套接字是指执行此套接字的网络调用时,直到成功才返回,否则一直阻塞在此网络调用上,比如调用recv()函数读取网络缓冲区中的数据,如果没有数据到达,将一直挂在recv()这个函数调用上,直到读到一些数据,此函数调用才返回;而非阻塞套接字是指执行此套接字的网络调...
类别:C/S程序开发 - C/C++,阅读:434,更新:2014-09-15

根据main参数更换词典

判断词典类型的代码。  /* 字典类型声明 */typedef enum{ec,ce,cc,bi}dictType;/* 字典类型定义 */dictType dictCaption;/* 判断字典 */static dictType JudgeDict(int argc, const char **argv ){if(argc == 2){if (strcmp(argv[1], eng_chn) == 0)return ec;else if (strcmp(argv[1], chn_eng) == 0)return ce;else if (strcmp(argv[1], chn_chn) == 0)return cc;else if (strcmp(argv[1], bilingual) == 0)return bi;elsereturn ec;}else{return ec;}}...
类别:C/S程序开发 - C/C++,阅读:419,更新:2014-09-15

删除字符串的所有子串

参考了晋良颖《数据结构》的正文模式匹配部分#include <stdio.h>#include <string.h>#include <assert.h>char *strDelete(char *s, char *t){assert((s != NULL) && (t !=NULL)); char *p;int index = strlen(t);while(1){p = strstr(s, t);if (p == NULL)break;*p = ’’;strcat(s, p+index);}return s;}int main(){char p[] = "how are you how are you";char *p1 = NULL;char *ptr = strDelete(p, p1);printf("%s", ptr);return 0;}...
类别:C/S程序开发 - C/C++,阅读:474,更新:2014-09-15

VC中缺省库冲突的解决

VC在编译程序时有两个习惯:1、在从头开始编译时(即生成makefile时),将源文件名按字母排序后,依次处理;2、一边编译一边决定需要哪些缺省库。 它的这些习惯有时会造成奇怪的编译错误,例如项目中有两个文件:charutil.cgbuni.cpp其中gbnni.cpp用到了MFC库。编译器先处理charutil.c,然后觉得需要link一个C Runtime库,根据项目设置选择了LIBCMTD.lib。然后又处理gbnni.cpp,因为要用MFC,又决定要link nafxcwd.lib。最后link的时候,就会出现以下冲突:nafxcwd.lib(afxmem.obj) : error LNK2005: "void __cdecl operator delete(void *)" (??3@YAXPAX@Z) already defined in LIBCMTD.lib(dbgdel...
类别:C/S程序开发 - C/C++,阅读:1187,更新:2014-09-12

创建可移植的64位应用程序代码

灵活地使用编译器开关选项可生成具移植性且高度优化的代码,你用了吗?充分利用AMD 64位技术需要以下三个条件:必要的AMD64硬件平台,一个可支持AMD64的操作系统,和一个支持AMD64 的64位编译器。AMD公司提供了第一个条件,Window和Linux提供了第二个条件,而一些开发工具提供了最后一个条件。这篇文章主要着重于阐述怎样设置Windows(Visual C++ 2005)及Linux(gcc 3.3.3)环境下的C/C++编译器选项。虽然PathScale和Portland Group公司等几个开发工具提供商推出了支持AMD64架构的编译器产品,但对于大多数Windows和Linux下的开发者来说,Microsoft和gcc编译器仍旧是不二的选择。Microsoft编译器虽然Microsoft还...
类别:C/S程序开发 - C/C++,阅读:430,更新:2014-09-12

C/C++中内存管理参考

  程序员们经常编写内存管理程序,往往提心吊胆。如果不想触雷,唯一的解决办法就是发现所有潜伏的地雷并且排除它们,躲是躲不了的。本文的内容比一般教科书的要深入得多,读者需细心阅读,做到真正地通晓内存管理。 1、内存分配方式 内存分配方式有三种: (1)从静态存储区域分配。内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在。例如全局变量,static变量。 (2)在栈上创建。在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结束时这些存储单元自动被释放。栈内存分配运算内置于处理器的指令集中,效率很高,但是分配的内存容量有限。 (3) 从堆上分配,亦称动态内存分配。程序在运行的时候用...
类别:C/S程序开发 - C/C++,阅读:1166,更新:2014-09-12

用C语言操作MySQL数据库

  很多人用到MySQL来开发一些项目,有时为了性能,我们会直接用C语言来开发相关的模块,尤其在我们的web应用中,虽然PHP、JSP等脚本均提供了MySQL的接口,但是显然直接使用C语言具有更好的安全性和性能,Michael以前用PHP开发的多个项目中就使用了C语言编写的这类接口,然后再编译到php里面,供php脚本直接使用,这方面的话题就不多说了,下面主要说一下在Linux下如何用C语言连接MySQL数据库,并且读取里面的数据返回,同时如何进行编译。  这里的大部分代码参考了MySQL发行包里面的.c源文件,大家也可以去里面找找相关的代码,下面这段代码实现了连接到本地MySQL服务器上9tmd_bbs_utf8数据库,从数据表tb...
类别:C/S程序开发 - C/C++,阅读:504,更新:2014-09-12

MFC:SOCKET类的设计和实现

 SOCKET类的设计和实现   WinSock基本知识  这里不打算系统地介绍socket或者WinSock的知识。首先介绍WinSock API函数,讲解阻塞/非阻塞的概念;然后介绍socket的使用。 WinSock API  Socket接口是网络编程(通常是TCP/IP协议,也可以是其他协议)的API。最早的Socket接口是Berkeley接口,在Unxi操作系统中实现。WinSock也是一个基于Socket模型的API,在Microsoft Windows操作系统类中使用。它在Berkeley接口函数的基础之上,还增加了基于消息驱动机制的Windows扩展函数。Winscok1.1只支持TCP/IP网络,WinSock2.0增加了对更多协议的支持。这里,讨论TCP/IP...
类别:C/S程序开发 - C/C++,阅读:530,更新:2014-09-12

MFC工具条和状态栏二

一般,在清除状态栏消息时,发送WM_POPMESSAGESTRING,通过消息参数wParam指定一个字符串资源,其ID 为AFX_IDS_IDLEMESSAGE,对应的字符串是“Ready”。 状态栏显示菜单项的提示信息 状态栏的一个重要作用是显示菜单命令或者工具条按钮的提示信息。本节讨论如何显示菜单命令的提示信息,关于工具条按钮在这方面的讨论见后面13.2.4.4章节。 显示菜单命令的提示信息,就是每当一个菜单项被选中之后,在状态栏显示该菜单的功能、用法等信息。这些信息以字符串资源的形式保存,字符串ID对应于菜单项的命令ID。 所以,必须处理菜单选择消息WM_MENUSELECT。CFrameWnd实现了消息处...
类别:C/S程序开发 - C/C++,阅读:559,更新:2014-05-19

MFC工具条和状态栏一

 MFC工具条和状态栏   Windows控制窗口  Windows (Windows95或者以上版本) 提供了系列通用控制窗口,其中包括工具条(ToolBar)、状态栏(StatusBar)、工具条提示窗口(ToolTip)。Windows在一个DLL加载时注册个控制窗口的“窗口类”。例如,工具条的“窗口类”是“ToolbarWindow32”,状态栏的“窗口类”是“msctls_statusbar32”,工具条提示窗口的“窗口类”是“tooltips_class32”。为了保证该DLL被加载,使用控制“窗口类”前,应该首先调用函数InitCommonControl。MFC在窗口注册函数AfxDeferRegisterClas...
类别:C/S程序开发 - C/C++,阅读:492,更新:2014-05-19