![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
VC6.0部分
文章平均质量分 75
hxzb7215191
这个作者很懒,什么都没留下…
展开
-
原始套接字类
记一下,这个程序主要的几个步骤:1、初始化Winsock2.dll文件BOOL CSniff::IniNetDll(){ WORD wVersionRequested; WSADATA wsaData; int err; wVersionRequested = MAKEWORD( 2, 0 ); err = WSAStartup( wVersionReques原创 2004-08-13 15:48:00 · 1065 阅读 · 0 评论 -
DirectX学习-了解什么是DirectX里的一些基本的概念
学一个工具先要学会它的一些概念,这样有利于我们去把握它。对于DirectX可能大家都有一些了解了。在很多的游戏里都使用它做为开发的jet。还有一些播放器都使用这个来做字幕什么东西的。视频头看图片。它的功能的确比较的强大。现在就开始来了解一些基础的东西。DirectX包含的部分: DirectDraw :通过直接访问显示硬件来提供高级的图象处理能力。 DirectSound :它提供了软硬件的低延迟原创 2005-04-29 13:59:00 · 1774 阅读 · 0 评论 -
如果做动态曲线图
可能有不少的地方都要做这样的动态的曲线图的来表达流量的动态情况。我这里做了一个这样的CStatic控件的类。能动态的显示出流量的趋势主要就重载CStatic类的OnPaint函数。使用一个typedef vectorCPointArr;来保存当前需要连结的点。在OnPaint函数里写好这样的内容就行了。void CMyStatic::OnPaint() { CPaintDC dc(this); D原创 2005-04-25 17:57:00 · 4319 阅读 · 1 评论 -
VC里使用MO
概述:mapobjects是ESRI公司的一个GIS的二次开发产品。在GIS行业里有二大公司。一个就是ESRI,还有一个就是MapInfo公司。在ESRI公司里,它们的所有的GIS产品都是叫ArcGIS。包括:ArcIMS这是用于把GIS发布到Internet上。还支持使用JSP等做开发。ArcSDE是在数据库管理系统中存储和管理多用户空间数据库的通路。简单的说来就是一个网上的地图服务器。ArcV原创 2005-04-27 14:34:00 · 3795 阅读 · 0 评论 -
ACE函数库在VC6.0中如果使用
ACE是一个开源的SOCKET封装的函数库如果你要使用这个东西做开发的话.就可以这样做:1.到它们的主页上去下载一个ACE的开发库http://www.riverace.com2.先解压缩放在一个目录下D:/ACE_wrappers,增加一个config.h文件,其中只要增加一句话:#include "ace/config-win32.h"3.使用VC打开D:/ACE_wrappers/ACE.d原创 2005-05-30 09:24:00 · 2976 阅读 · 4 评论 -
ACE之日志处理No1
学了一点socket的皮毛,现在想偷懒。也是为了让自己的程序的框架结构更加的稳健开始学习ACE的东西。今天是做了一个ACE里打印一些日志的消息。// 写日志.cpp : Defines the entry point for the console application.//#include "stdafx.h"#include using namespace std;void foo(void原创 2005-11-30 16:42:00 · 1700 阅读 · 0 评论 -
写文件方式的日志
很多的时候我们都需要将日志写到文件里.我这里的例子就是写了一个类,只要指定了文件名称就可以自动的把程序里写过的那一些ACE_DEBUG,ACE_ERROR的消息都保存在其中.当然我们还可以通过ACE_LG_MSG->priority_mask(LM_DEBUG |LM_NOTICE,ACE_Log_Msg::PROCESS);来修改打印的级别. // 定义一个文件流对象st原创 2006-02-07 12:04:00 · 1609 阅读 · 0 评论 -
ACE中使用完成端口.
使用ACE中的Proactor的话,会要比我们使用我们直接写的要来得简单。在说Proactor之前我们需要了解Windows里的完成端口的工作原理。完成端口是WinNT内核里的一个框架。我们可以为我们的一些异步的操作新建一个完成端口,然后这个完成端口会有几个工作线程来处理。我们可以将socket,或是一个文件读写,或是一个串口的收发数据的句柄,梆定到这个完成端口之上,当一个读或是写的事件完成之后,原创 2006-02-11 17:19:00 · 6543 阅读 · 1 评论 -
解决网络数据粘包的问题
一个网络上来的数据包之后,我们必需将收到的数据包整理成为一个一个的完成的数据包.这里写了一个代码来搞定这个问题的.首先我们需要有一个内存缓冲区.还有我们已经使用了这个缓冲区的大小的标志.void getData(const char* buff,int nSize){ char *pCheckBuff=(char*)buff; // 检查的缓冲区 int nCountSize=nSize; /原创 2006-05-25 12:27:00 · 2531 阅读 · 0 评论 -
如何使用.net来部署使用了水晶报表开发出来的exe程序
1.新建一个setup类型的工程:2.为这个安装程序增加安装合并项:到水晶报表的主页下载合并模块:并将其加入到工程中.3.在此处填写注册码原创 2005-04-19 08:54:00 · 1244 阅读 · 0 评论 -
一个简单的线程类
有不少的时候,我们都需要一个这样的线程类来管理我们的线程。现在我做一个最简单的一个线程管理类。我们的这个线程当然会开始一个线程。并且会让用户能写一个线程处理函数加到我的这个类里来。所以这个会要从外部读入一个处理函数的一个函数指针给我。自己写这个处理函数的时候会需要入口参数,这里我设计使用一个void*类型来传入。这样就比较的好。因为所有使用这个变量可以把所有的类型都传过来。使用指针全都可以传成这个原创 2005-03-29 20:54:00 · 2904 阅读 · 1 评论 -
VC使用MSXML解析XML文档,例子代码
现在XML文档应用的方面特别的多.我把以前写过的一个例子帖出来,以备以后使用.第一部分:DOM解析: 概述:DOM解析将会把一个完整的XML文档读进来,生成一个结构树。这样会要把XML文档全部都加载到内在中。所以解析起来的速度会要慢一些。 1、如何加载xml文件: //创建DOM,加载XML文档 MSXML::IXMLDOMDocumentPtr p原创 2005-01-07 18:32:00 · 3166 阅读 · 1 评论 -
水晶报表的一个小小的例子
这次我们做了一个程序.访问数据库: 使用数据库访问中间件,只要写一个XML文件,通过Hibrate访问到真正的数据库,它将会返回一个XML文档给我们做为记录集.做报表使用的方式: 生成静态的报表.写出一个TTX文件.基于这个做一个静态报表.把一些需要显示的内容都把它谋划好.还有一些公式也要做好.之后,数据来源是这样的.读出XML文档中的记录集,打开一个没有连接到数据库上的原创 2005-01-08 11:31:00 · 1934 阅读 · 1 评论 -
进程间通信方式
在Win32下提供的进程间通信方式有以下几种: 剪贴板Clipboard:在16位时代常使用的方式,CWnd类中提供了支持。 COM/DCOM:通过COM系统的代理存根方式进行进程间数据交换,但只能够表现在对接口函数的调用时传送数据,通过DCOM可以在不同主机间传送数据。 Dynamic Data Exchange (DDE):在16位时代常使用的方式。 File Mapping:文件映射,在原创 2005-02-19 20:27:00 · 4455 阅读 · 0 评论 -
C++普通重载,虚函数重载,纯虚函数重载
前一些时间里对这三类的重载不太了解.概念上有一些混.今天做了一个这样的例子来测试了一下到底这个几种函数的不同.基类:class A {public: A(); void f1(); virtual void f2(); virtual void f3()=0; virtual ~A();};子类:class B : public A {public: B(); void f1();原创 2005-02-22 20:24:00 · 4121 阅读 · 2 评论 -
dlg中使用sroll
这一次有一个项目里需要在dlg里使用到sroll。在这里记录一下代码。首先你要为sroll设置一下这个刻度。SetScrollRange( SB_HORZ, SCROLL_MIN, SCROLL_MAX );//这是设置横向的滚动的刻度。还要计算一下滚动的时候dlg对应有多少个位移 //保留原始大小 GetClientRect( &m_clientRect ); //计算滚动幅度原创 2005-07-05 09:25:00 · 2103 阅读 · 0 评论 -
socket编程总结(1)
使用socket写代码主要是要看自己的需求是什么。如果通信时,内容很重要就要使TCP方式。如果用户数太多,可能就要使用UDP方式了。在TCP模式下,最简单的方式就是这样的,使阻塞方式:服务端:1.初始化socket环境,创建socket2.梆定一个端口3.开始监听4.接收客户端5.接收到客户端之后,使用这个socket来与这个客户通信#include "stdAfx.h"#include #inc原创 2005-03-24 20:10:00 · 1560 阅读 · 0 评论 -
socket编程总结(2)
当然TCP方式的模型还有事件选择模型。就是把所有的网络事件和我们的一个程序里定义的事件梆定。这个有它的好处,可能可以让我们更好的写一个线程来管理接收与发送。现在来讲一下一个完成端口模型。 完成端口 一个完成端口其实就是一个通知队列,由操作系统把已经完成的重叠I/O请求的通知 放入其中。当某项I/O操作一旦完成,某个可以对该操作结果进行处理的工作者线程 就会收到一则通知。而套接字在被创建后原创 2005-03-26 15:13:00 · 2382 阅读 · 1 评论 -
Dialog中加入一个工具栏如果让它有提示信息
工具栏一般使用在SDI或是MDI里。如果我们在一个Dialog里新建了一个工具栏,它的提示信息可能就没有办法出来了。主要的原因是由于我们没有为这个工具栏写提示信息的消息映射函数。如果要增加的话。就可以这样。1.增加一个这样的函数处理函数afx_msg BOOL OnToolTipText( UINT id, NMHDR * pNMHDR, LRESULT * pResult );BOOL MyDi原创 2005-03-29 19:32:00 · 1159 阅读 · 0 评论 -
Linux里使用ACE时的makefile
如果你想写一个源代码,可能直接跨过windows与linux with ACE.那可能要留意以下几点了.一个对于#include里,不要像在VC里使用时,文件的大小写没有区别.在linux里是不行的.还有目录的表示如:#include "ace/ACE.h"与#include "ace/ACE.h"都是一样的.但是在linux里只会认识#include "ace/ACE.h"还需要原创 2006-07-14 10:40:00 · 2638 阅读 · 0 评论