mzjs-long

2011年10月4日 #

C语言做的控制台程序能连接数据库吗?

控制台程序也可以连数据库的,但这个要需要用c++,而且还要学数据库方面的知识,如sql语句会用吗?
每一种数据库的连接方法都不同.在windows下多数用微软提供的dao库,如果你需要用数据库,就要先学下数据库方面的知识咯。常见的数据库有access、sql server、mysql等。

来自 [萝岗九龙社区] http://www.gzzsc.net

posted @ 2011-10-04 11:03 白河愁 阅读(435) | 评论 (0)编辑 收藏

2011年9月21日 #

控件随窗口大小变化而变化,控件自动定位拉伸方法

网上找了个类ClxDialog能够实现控件自动定位,拉伸.
原理通过OnSize里的几个参数UINT nType, int cx, int cy进行运算.
但会有几个问题:
1. 当窗口设为child类型时,nType的值总是0.
2.当窗口拉到特别小,再拉到原来大小,控件都会变形.
3.当窗口最小化,再恢复时,CListCtrl控件变形.

这是本人在使用时发现的问题,因此本人对此作了较大的修改.
原理是:不使用OnSize的参数,而是通过保存窗口初始化时的值.
当窗口变化时,再计出变化的大小.
详情见源码.

使用方法;
在OnInitDialog加入
// 控件信息数组

static DLGCTLINFO dcMenuGroup[] =

{

{IDC_BTN_ADD, MOVEX, 100},

{IDC_BTN_EDIT, MOVEX, 100},

{IDC_BTN_DEL, MOVEX, 100},

{IDC_BTN_EXEC, MOVEX, 100},

{IDC_BTN_STOP, MOVEX, 100},

{IDC_LIST_TASK, ELASTICXY, 100},

 

};

 

// 设置控件信息

SetControlProperty(dcMenuGroup, sizeof(dcMenuGroup)/sizeof(DLGCTLINFO));
复制代码
在OnSize调用
CDialogEx::OnSize(nType, cx, cy);


 
来自 [萝岗九龙社区] http://www.gzzsc.net

posted @ 2011-09-21 22:48 白河愁 阅读(1346) | 评论 (0)编辑 收藏

2011年8月30日 #

遍历查找指定目录的文件名

#include "stdio.h"
#include "windows.h"
#include "winbase.h"
void FindFileInDir(char* rootDir);
int main()
{
FindFileInDir("D:\\");  //自己改路径
return 0;
}

void FindFileInDir(char* rootDir)
{

WIN32_FIND_DATA fd;
ZeroMemory(&fd, sizeof(WIN32_FIND_DATA));
HANDLE hSearch;     //搜索句柄
char filePathName[256];   //搜索的起始文件名
ZeroMemory(filePathName, 256);
strcpy(filePathName, rootDir);
BOOL bSearchFinished = FALSE;

if( filePathName[strlen(filePathName) -1] != '\\' )//如果传过来的路径名不完整,如d: 则自动变为d:\\
 
{
  strcat(filePathName, "\\");  //strcat字符串追加
}
strcat(filePathName, "*"); //字符串追加,当前为d:\\*

hSearch = FindFirstFile(filePathName, &fd); //第一次搜索
printf("%s%s\n",rootDir,fd.cFileName);//显示路径+文件名
//如果不是目录
while( !bSearchFinished )
{
 
  if( FindNextFile(hSearch, &fd) ) //搜下一个文件
  {
  
   if( (fd.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)    //如果是目录
   
    && strcmp(fd.cFileName, ".") && strcmp(fd.cFileName, "..") )
   {
    //什么也不做
   }
  
   else if( strcmp(fd.cFileName, ".") && strcmp(fd.cFileName, "..") )//如果是一个文件
   {
    printf("%s%s\n",rootDir,fd.cFileName);//显示路径+文件名
   
   }
  }
  else
  {
   if( GetLastError() == ERROR_NO_MORE_FILES )   //没有文件
   {
    bSearchFinished = TRUE;
   
   }
   else
    bSearchFinished = TRUE;
  }
}
FindClose(hSearch);

}

来自 [萝岗九龙社区] http://www.gzzsc.net

posted @ 2011-08-30 23:19 白河愁 阅读(397) | 评论 (0)编辑 收藏

vc6新建工程没有MFC项,VC6导入MFC工程出错.

一个vc6安装包,以前用没问题.
最近重新装一次,发现VC6在新建工程时没有了MFC项.
导入MFC的工程,也没法解析.出现:
致命错误:RC1015:无法打开包含文件'afxres.h'.

解决办法如下:
卸载vc6,并删除已安装目录所有文件.重启再重装就OK.

 

来自 [萝岗九龙社区] http://www.gzzsc.net

posted @ 2011-08-30 23:09 白河愁 阅读(258) | 评论 (0)编辑 收藏

仅列出标题