Windows编程
文章平均质量分 54
sunnyboychina
这个作者很懒,什么都没留下…
展开
-
C语言编写Windows服务程序。
Windows 服务被设计用于需要在后台运行的应用程序以及实现没有用户交互的任务。为了学习这种控制台应用程序的基础知识,C(不是C++)是最佳选择。本文将建立并实现一个简单的服务程序,其功能是查询系统中可用物理内存数量,然后将结果写入一个文本文件。最后,你可以用所学知识编写自己的 Windows 服务。 当初我写第一个NT 服务时,我到 MSDN 上找例子。在那里我找到了一篇 Nigel T原创 2006-04-13 18:28:00 · 3400 阅读 · 0 评论 -
如何设定窗口高度、宽度的最小值
DialogProc( HWND hwnd, UINT msg, WPARAM wp, LPARAM lp ){ switch( msg ) {...... case WM_GETMINMAXINFO: LPMINMAXINFO lpmmi; lpmmi = (LPMINMAXINFO)lp; if(pOBJ->m_IsControlFlg == 1){ lpmmi->ptM原创 2009-06-12 18:20:00 · 1294 阅读 · 0 评论 -
如何判断控件是什么控件,并且有哪些属性。
1. 判断控件是什么控件 char className[256] = "";//通过这个函数可以得到控件的名称。其中hwnd是控件的句柄。 GetClassName(hwnd, className, sizeof(className)); if(!stricmp(className, "Button") || !stricmp(className, "Radio-button")原创 2009-07-09 15:59:00 · 651 阅读 · 0 评论 -
关于tabstop和group的事情
关于tabstop。可以在.rc编辑画面中,Ctrl+D显示Tab键的执行顺序,直接用鼠标点击控件就可以改变这些顺序。关于group。比如要设定3个按钮为一组,需要把第一个按钮的group属性设定为true,另外两个设定为False,这样系统就会知道这3个控件为一组。具体应用看下面的代码。 把控制焦点移动的代码放到消息循环里: while (GetMessage(&msg, NU原创 2009-07-09 16:19:00 · 1362 阅读 · 1 评论 -
将字符串中的字符成双
将字符串成双(double)如:C:/Output/db2_file变成C://Output//db2_file//strA为原字符串,strB为改变后保存的字符串char* DoubleSlash(char *strA,char *strB){ int m = 0; if (strA == NULL) return NULL; int n = strlen(strA); for原创 2009-10-10 16:07:00 · 592 阅读 · 0 评论 -
用C语言创建多级目录
//str是需要创建的目录字符串,如C://Output//src//db,注意路径要用双斜线int MyCreateDirectory(char * str){ char dirPath[MAX_PATH]; char *lpszTmp; int i=0; sprintf(dirPath,"%s",str); for(i=strlen(dirPath);i > 2;i--) { if原创 2009-10-10 16:14:00 · 3978 阅读 · 2 评论 -
去掉字符串右端的空格
char* sRTrim(char* pString,char aChar){ char* pStr; int iLen; if(pString == NULL) return(NULL); for(iLen=strlen(pString)-1,pStr=pString;iLen>=0&& *(pStr+iLen)==aChar;iLen--);原创 2009-10-10 16:20:00 · 599 阅读 · 0 评论 -
判断路径是否存在,文件拷贝
//判断srcDir的路径是否存在 if(access(SrcDir, 0) == 0){ CopyFile(SrcDir, DistDir, FALSE); //文件拷贝。SrcDir为源文件路径,DistDir为目的文件路径 }原创 2009-10-10 16:27:00 · 493 阅读 · 0 评论 -
List box的使用
//List Box内容的建立 for ( int n = 0; n // LB_INSERTSTRING Message // Inserts a string or item data into a list box. // lResult = SendMessage( hWndControl, LB_INSERTSTRING,原创 2009-10-15 13:10:00 · 690 阅读 · 0 评论 -
奇怪的double型变量的比较
今天遇到个有趣的问题。double en = 2130.60000000003; if(en > 9999.9) sprintf(buff, "9999.9");//这样的话就会进来改变之后#define MAXNUM 9999.9 if(en > MAXNUM) sprintf(buff, "9999.9");//这样就不会进来 谁能解释一下呢~原创 2009-06-01 18:14:00 · 498 阅读 · 0 评论 -
C++ template ——function template
原文:http://blog.csdn.net/qaz19870418/archive/2009/06/14/4269189.aspx 从今天开始来学习一下《C++ template》,学习c++ template的动机来自于自己在实现数据结构中的类的时候所遇到的困难。虽然以前在谭浩强老师所编写的《C++程序设计》一书中学过一点c++模板的的知识,但是那本书中讲的关于模板的知识是在是太少了转载 2009-07-14 09:53:00 · 1657 阅读 · 0 评论 -
Windows图形基础(一)
Windows可以画直线、椭圆线(椭圆圆周上的曲线)和贝塞尔曲线。 LineTo 画直线。 Polyline和PolylineTo 画一系列相连的直线。 PolyPolyline 画多组相连的线。 Arc 画椭圆线。 PolyBezier和PolyBezierTo 画贝塞尔曲线。 ArcTo和AngleArc 画原创 2007-03-07 15:03:00 · 1515 阅读 · 0 评论 -
在程序中如何调用可执行程序。
第一个程序:调用WinExec()函数,但是打开应用程序后,得手动关闭,没有自行结束的方法。#include #include #include int main() { if(WinExec("C://Program Files//WinRAR//WinRAR.exe D://My_Document_ZL//Study//C_code_example//my_printf.tgz", 1))原创 2006-04-13 14:22:00 · 1681 阅读 · 0 评论 -
轻松实现一个操作ini文件的类
前言: 相信很多朋友在编写自己的程序中,都需要把一些数据先期导入到程序中进行初始化。那么这个时候,比较好的做法就是把你所有的数据写入一个ini文件,然后在程序去读ini文件中的数据对行初始化。一.INI简介 那么什么是ini文件呢?ini文件是Initialization file的缩写,意即初始化文件。(从名字就可以看出它的功能了吧)。不仅你自己的程序可以使用ini文件转载 2006-04-13 13:53:00 · 838 阅读 · 0 评论 -
读*.csv文件的实现
CSVFileTest.csv(用记事本写就可以了,存成.csv)# 这部分是注释,可以随心情写了。# Version,1.01,1,”机能1”,”path1”,3,0,1,12,2,”机能2”,“path2”,15,0,1,13,3,”机能3”,”path3”,30,0,2,14,4,”机能4”,”path4”,0,0,0,15,5,””,””,0,0,0,06,6,””,””,0,0,0原创 2006-04-13 14:11:00 · 1208 阅读 · 0 评论 -
如何制作及链接静态链接库。
1.静态链接库的生成在VC++6.0中新建项目的Project选项卡中选择Win32 Static Library,将原文件及头文件添加到相应的文件夹中,编译链接一下,如果没有错误就会自动生成.lib文件了。2.静态链接库的链接将下列语句添加到头文件中:#pragma comment(lib,"XXX.lib")之前要确认XXX.lib是否在当前的目录下,或者在VC指定的LIB原创 2006-04-17 08:41:00 · 8682 阅读 · 2 评论 -
如何建立及链接动态链接库。
什么是 DLL?DLL 是一个包含可由多个程序同时使用的代码和数据的库。例如,在 Windows 操作系统中,Comdlg32 DLL 执行与对话框有关的常见函数。因此,每个程序都可以使用该 DLL 中包含的功能来实现“打开”对话框。这有助于促进代码重用和内存的有效使用。通过使用 DLL,程序可以实现模块化,由相对独立的组件组成。例如,一个计帐程序可以按模块来销售。可以在运行时将各个模块加载到主程原创 2006-04-18 16:40:00 · 3978 阅读 · 0 评论 -
如何计算系统时间间隔。
从系统中随便取出两个时间,要计算其时间间隔,方法有许多种,总结如下,要是有更好的方法,请大家发表评论啊。:)1、当然是最基本的,用程序自己写,代码如下:/*calculate time*/#include "time.h"#include "stdio.h"#include "conio.h"main(){ time_t start,end; int i; start=time(NU原创 2006-04-17 09:01:00 · 5099 阅读 · 0 评论 -
Windows图形基础(二)
一、绘制填入区域现在再更进一步,从画线到画图形。Windows中七个用来画带边缘的填入图形的函数列于下表中。 函数 图形原创 2007-03-07 15:17:00 · 1025 阅读 · 0 评论 -
Windows编程(三)---计时器篇
Microsoft Windows定时器是一种输入设备,它周期性地在每经过一个指定的时间间隔后就通知应用程序一次。您的程序将时间间隔告诉Windows,例如「每10秒钟通知我一声」,然后Windows给您的程序发送周期性发生的WM_TIMER消息以表示时间到了。定时器入门您可以通过呼叫SetTimer函数为您的Windows程序分配一个定时器。SetTimer有一个时间间隔范围为1毫秒到4原创 2007-03-08 09:19:00 · 2583 阅读 · 0 评论 -
VC2005下动态链接库的连接
test的dll工程build后会生成两个有用的文件,比如test.dll和test.lib在你需要引用test.dll的工程里面(比如main),工程-〉属性-〉Link中的[添加库路经]中,把test.lib所在的路径指定好。然后在 工程-〉属性-〉Link-〉输入 中填入test.lib 只要生成的main.exe和test.dll在同一目录下就OK了。原创 2009-10-15 15:15:00 · 871 阅读 · 0 评论