- 博客(89)
- 资源 (20)
- 问答 (1)
- 收藏
- 关注
原创 数据转换
atoi(将字符串转换成整型数) 相关函数 atof,atol,atrtod,strtol,strtoul 表头文件 #include 定义函数 int atoi(const char *nptr); 函数说明 atoi()会扫描参数nptr字符串,跳过前面的空格字符,直到遇上数字或正负符号才开始做转换,而再遇到非数字或字符串结束时(/0)才结束转换,并将结果返回。 返回值 返回转换后的整型数
2008-10-16 23:26:00 507
原创 循环测试系统端口
#include "stdafx.h"#include #include #include #include #include#pragma comment (lib,"ws2_32.lib") int main (int argc, char *argv[]) { int iportFrom,iportTo; int testsocket; int iopenedport = 0;
2008-10-16 23:20:00 736
原创 [转]vc中socket编程步骤
sockets(套接字)编程有三种,流式套接字(SOCK_STREAM),数据报套接字(SOCK_DGRAM),原始套接字(SOCK_RAW);基于TCP的socket编程是采用的流式套接字。在这个程序中,将两个工程添加到一个工作区。要链接一个ws2_32.lib的库文件。服务器端编程的步骤:1:加载套接字库,创建套接字(WSAStartup()/socket());2:绑定套接字到一个IP
2008-10-16 23:11:00 796
原创 Visual C++中的ODBC编程实例
Microsoft Developer Studio为大多数标准的数据库格式提供了32位ODBC驱动器。这些标准数据格式包括有:SQL Server、Access、Paradox、dBase、FoxPro、Excel、Oracle以及Microsoft Text。如果用户希望使用其他数据格式,则需要安装相应的ODBC驱动器及DBMS。 用户使用自己的DBMS数据库管理功能生成新的数据库模式后,就
2008-10-16 12:39:00 553
原创 应用ODBC API建立应用程序
虽然直接应用ODBC API编制应用程序相对来说较为繁琐,但是,由于直接使用ODBC API编写的程序相对要简洁、高效。所以,我们有必要学习直接使用ODBC API编程。看图之王ACDSee 6.0应用大全数码人像照片矢量化及艺术处理六天学会Visual Basic数据库编程解析“震荡波”恶性蠕虫病毒 一般地,编写ODBC程序主要有以下几个步骤: 分
2008-10-16 12:29:00 704
原创 Visual C++开发数据库技术的特点
Visual C++提供了多种多样的数据库访问技术——ODBC API、MFC ODBC、DAO、OLE DB、ADO等。这些技术各有自己的特点,它们提供了简单、灵活、访问速度快、可扩展性好的开发技术。 简单性 Visual C++中提供了MFC类库、ATL模板类以及AppWizard、ClassWizard等一系列的Wizard工具用于帮助用户快速的建立自己的应用程序,大大简化了应用程序的
2008-10-16 12:24:00 771
原创 Visual C++实现自动配置ODBC数据源
为了使ODBC能与数据库一起工作,必须把数据库注册到ODBC驱动程序管理器,这项工作可以通过定义一个DSN或数据源名字来完成。通常,我们只能手动打开系统控制面板,运行其中的ODBC数据源管理器,手工配置数据源,但是这项工作对用户而言过于复杂,我们必须考虑用程序替用户完成这些配置工作。 1. SQLConfigDataSource 函数说明 ODBC API提供了动态创建数据源的函数SQLCon
2008-10-16 12:22:00 940
原创 VC++中使用ADO方式操作ACCESS数据库
ADO(ActiveX Data Object)是Microsoft数据库应用程序开发的新接口,是建立在OLE DB之上的高层数据库访问技术,即使你对OLE DB,COM不了解也能轻松对付ADO,因为它非常简单易用,甚至比你以往所接触的ODBC API、DAO、RDO都要容易使用,并不失灵活性。本文详细地介绍在Visual C++开发环境下如何使用ADO来进行数据库应用程序开发,并给出示例代码。为
2008-10-16 12:19:00 604
原创 vc下操作MYSQL中文数据的参考程序
//在vc下操作MYSQL中文数据的参考程序 #include #include #include #include #include using namespace std; int connDB(); int create_table(); int insert_table(); int select_table(); int disconnDB(); MYSQL *mysql; M
2008-10-16 12:16:00 612
原创 VC中如何设置程序优先级
//设置程序优先级 在程序运行中,我们经常希望程序能够得到系统的优先响应,所以必须设置程序的优先级,在VC中,我们只需要在程序的主线程中,将其构造函数添加如下代码即可 SetPriorityClass(GetCurrentProcess(),HIGH_PRIORITY_CLASS);如:CSpeedDlg::CSpeedDlg(CWnd
2008-10-12 13:32:00 1939
原创 提升本程序进程优先级和权限(VC++源代码)
/****************************************************************本类功能:提升本程序进程优先级和权限编写作者:Coderui编写日期:2008年03月24日联系邮箱:coderui@163.com作者博客:http://hi.baidu.com/coderui文件名称:EnablePriv.h********************
2008-10-12 13:30:00 1838 2
原创 VC++里面radio button如何添加成员变量
对于一组radio button,将第一个的属性中的Group设为true,其余都为false,然后右击第一个按钮,添加变量,设为控件变量,value,类型改为int,当变量为0时表示选中的是第一个,1是表示选中第二个,类推。 然后按照上面的顺序添加第二组radio button。
2008-10-11 23:08:00 1740
原创 基于MFC的截屏和以位图保存之的自编函数 全攻略
Vc6中,把如下两个文件拷贝到你的工程中,然后在用到截屏的文件中,先#include "takescreen.h",再直接用如下三个函数即可。附:头文件:takescreen.h---------------------------------------------------------------------------------------------------------------
2008-10-05 21:30:00 939
原创 抓屏函数
CDeskTopView::DeskTop(){CClientDC dc(this);CRect nRect;GetClientRect(&nRect);HWND hDesk=::GetDesktopWindow(); //得到桌面窗口句柄 //HWND hWallPaper=::GetDlgItem(hDesk,1); HDC hdc=::GetWin
2008-10-05 21:00:00 728
原创 如何查询和设置系统参数
在Windows 3.1 SDK中介绍过SDK函数SystemParametersInfo,调用该函数可以查询和设置系统参数,诸如按键的重复速率设置、鼠标双击延迟时间、图标字体以及桌面覆盖位图等等。//Create a font that is used for icon titles.LOGFONT stFont;:: SystemParametersInfo (SPIF_GETICONTITL
2008-10-05 15:31:00 552
原创 在用户环境中如何确定系统显示元素的颜色
调用SDK函数GetSysColor可以获取一个特定显示元素的颜色。下例说明了如何在MFC函数CMainFrameWnd:: OnNcPaint中调用该函数设置窗口标题颜色。void CMiniFrameWnd:: OnNcPaint (){ … CRect rcFrame,rcClient; GetWindowRect (rcFrame);
2008-10-05 15:25:00 509
原创 如何给系统菜单添加一个菜单项
给系统菜单添加一个菜单项需要进行下述三个步骤: 首先,使用Resource Symbols对话(在View菜单中选择Resource Symbols...可以显示该对话)定义菜单项ID,该ID应大于0x0F而小于0xF000; 其次,调用CWnd::GetSystemMenu获取系统菜单的指针并调用CWnd:: Appendmenu将菜单项添加到菜单中。下例给系统菜单添加两个新的菜单项
2008-10-05 15:23:00 1340
原创 为什么即使调用EnableMenuItem菜单项后,菜单项还处于禁止状态
需要将CFrameWnd:: m_bAutomenuEnable设置为FALSE,如果该数据成员为TRUE(缺省值),工作框将自动地禁止没有ON_UPDATE_COMMAND_UI或者ON_COMMAND的菜单项。//Disable MFC from automatically disabling menu items.m_bAuoMenuEnable=FALSE;//Now enable the
2008-10-05 15:21:00 1088
原创 如何快速地格式化一个CString对象
调用CString:: Format,该函数和printf函数具有相同的参数,下例说明了如何使用Format函数://Get size of window.CRect rcWindow;GetWindowRect (rcWindow);//Format message string.CString strMessage;strMessage.Format (_T ("Window Size (%d
2008-10-05 15:19:00 559
原创 串太长时如何在其末尾显示一个省略号
调用CDC:: DrawText并指定DT_END_ELLIPSIS标志,这样就可以用小略号取代串末尾的字符使其适合于指定的边界矩形。如果要显示路径信息,指定DT_END_ELLIPSIS标志并省略号取代串中间的字符。void CSampleView:: OnDraw (CDC* pDC){ CTestDoc* pDoc=GetDocument (); ASSERT_VALID (
2008-10-05 15:18:00 810
原创 如何正确显示包含标签字符的串
调用GDI文本绘画函数时需要展开标签字符,这可以通过调用CDC:: TabbedTextOut或者CDC:: DrawText并指定DT_EXPANDTABS标志来完成。TabbedTextOut函数允许指定标签位的数组,下例指定每20设备单位展开一个标签:
2008-10-05 15:17:00 501
原创 如何显示旋转文本
只要用户使用TrueType或者GDI笔或字体就可以显示旋转文本(有些硬件设备也支持旋转光栅字体)。LOGFONT结构中的ifEscapement成员指定了文本行和x轴的角度,角度的单位是十分之一度而不是度,例如,ifEscapement为450表示字体旋转45度。为确保所有的字体沿坐标系统的同一方向旋转,一定要设置ifEscapement成员的CLIP_LH_ANGLES位,否则,有些字体可能反
2008-10-05 15:16:00 667
原创 如何计算一个串的大小
函数CDC:: Det text Extent 根据当前选择的字体计算一个串的高度和宽度。如果使用的不是系统字体而是其他字体,则在调用GetTextExtent之前将字体选进设备上下文中是很重要的,否则计算高度和宽度时将依据系统字体,由此得出的结果当然是不正确的。下述样板程序当改变下压按钮的标题时动态调整按钮的大小,按钮的大小由按钮的字体和标题的大小而定。响应消息WM_SETTEXT时调用OnSe
2008-10-05 15:15:00 529
原创 如何更新翻转背景颜色的文本
调用CDC:: SetBkmode并传送OPAQUE用当前的背景颜色填充背景,或者调用CDC::SetBkMode并传送TRANSPAARENT使背景保持不变,这两种方法都可以设置背景模式。下例设置背景模式为TRANSPARENT,可以两次更新串,用花色带黑阴影更新文本。黑色串在红色串之后,但由于设置了背景模式仍然可见。void CSampleView:: OnDraw (CDC* pDC){
2008-10-05 15:14:00 543
原创 如何创建一个具有特定点大小的字体
可以指定字体逻辑单位的大小,但有时指定字体的点的大小可能会更方便一些。可以如下将字体的点转换为字体的高度:int nHeigth=mulDiv (nPointSize, -dc.GetDeviceCaps (LOGPIXELSY), 72); 下例创建了一个8点的Apial字体:…CClientDC dc (AqfxGetMainWnd ());m_font. CreateFont (Mul
2008-10-05 15:14:00 526
原创 如何实现一个橡皮区矩形
CRectTracker是一个很有用的类,可以通过调用CRectTracker:: TrackRubberBand响应WM_LBUTTONDOWN消息来创建一个橡皮区矩形。下例表明使用CRectTracker移动和重置视窗中的蓝色椭圆的大小是很容易的事情。 首先,在文件档中声明一个CRectTracker数据成员:class CSampleView : Public CView{ …
2008-10-05 15:13:00 620
原创 如何访问预定义的GDI对象
可以通过调用CDC:: SlectStockObject使用Windows的几个预定义的对象,诸如刷子、笔以及字体。下例使用了Windows预定义的笔和刷子GDI对象在视窗中画一个椭圆。//Draw ellipse using stock black pen and gray brush.void CSampleView:: OnDraw (CDC* pDC){ //Determine
2008-10-05 15:12:00 371
原创 如何获取GDI对象的属性信息
可以调用GDIObject:: GetObject。这个函数将指定图表设备的消息写入到缓冲区。下例创建了几个有用的辅助函数。//Determine if font is bold.BOOL IsFontBold (const CFont&font){ LOGFONT stFont; font.GetObject (sizeof (LOGFONT), &stFont); r
2008-10-05 15:12:00 582
原创 如何向编辑控件中添加文本
由于没有CEdit:: AppendText函数,用户只好自己做此项工作。调用CEdit:: SetSel移动到编辑控件末尾,然后调用CEdit:: ReplaceSel添加文本。下例是AppendText 的一种实现方法:void CMyEdit:: AppendText (LPCSTR pText){
2008-10-05 15:11:00 516
原创 当向列表框中添加多个项时如何防止闪烁
调用CWnd::SetRedraw 清除重画标志可以禁止CListBox(或者窗口)重画。当向列表框添加几个项时,用户可以清除重画标志,然后添加项,最后恢复重画标志。为确保重画列表框的新项,调用SetRedraw (TRUE) 之后调用CWnd::Invalidate。//Disable redrawing.pListBox->SetRedraw (FALSE);//Fill in the lis
2008-10-05 15:09:00 731
原创 如何改变控件的颜色
有两种方法。其一,可以在父类中指定控件的颜色,或者利用MFC4.0新的消息反射在控件类中指定颜色。 当控件需要重新着色时,工作框调用父窗口(通常是对话框)的CWnd: : OnCrtlColor,可以在父窗口类中重置该函数并指定控件的新的绘画属性。例如,下述代码将对话中的所有编辑控件文本颜色改为红色:HBRUSH CAboutDig : : OnCtlColor (CDC * pDCM ,
2008-10-05 15:07:00 797
原创 如何限制编辑框中的准许字符
如果用户在编辑控件中只允许接收数字,可以使用一个标准的编辑控件并指定新的创建标志ES_NUMBERS,它是Windows 95新增加的标志,该标志限制 编辑控件只按收数字字符。如果用户需要复杂的编辑控件,可以使用Microsoft 的屏蔽编辑控件,它是一个很有用的OLE定制控件。 如果希望不使用OLE 定制控件自己处理字符,可以派生一个CEdit 类并处理WM_CHAR消息,然后从编辑控件
2008-10-05 15:06:00 541
原创 如何动态创建控件
分配一个控件对象的实例并调用其Create成员函数。开发者最容易忽略两件事:忘记指定WS_VISBLE标签和在栈中分配控件对象。下例动态地创建一个下压按钮控件://In class declaration (.H file ).private : CButton* m _pButton ;//In class implementation (.cpp file ) .m_pButton =n
2008-10-05 15:05:00 859
原创 如何一个创建三态下压按钮
可以使用新的BS_PUSHBUTTON 风格位和检测框以及按钮来创建一个三态下压按钮。这很容易,只需将检测框和按钮拖拉到对话中并指定属性Push—like即可。不用任何附加程序就可以成为三态下压按钮。
2008-10-05 15:04:00 742
原创 如何使用一个预定义的Windows光标
调用CWinApp:: LoadStandardCursor并传送光标标识符。 BOOL CSampleDialog:: OnSetCursor (CWnd* pWnd, UINT nHitTest, UINT message){ //Display wait cursor if busy. if (m_bBusy) { SetCursor (Afx
2008-10-05 15:02:00 447
原创 如何检索原先的Task Manager应用程序使用的任务列表
原先的Task Manager应用程序显示顶层窗口的列表。为了显示该列表,窗口必须可见、包含一个标题以及不能被其他窗口拥有。调用CWnd:: GetWindow可以检索顶层窗口的列表,调用IsWindowVisible、GetWindowTextLength以及GetOwnervoid GetTadkList (CListBox&list){ //Get first Window in w
2008-10-05 15:01:00 463
原创 如何确定Windows和Windows系统目录
有两个SDK函数可以完成该功能。GetWindowsDirectory和GetSystemDirectory,TCHAR szDir [MAX_PATH];//Get the full path of the windows directory.:: GetWindowsDirectory (szDir, MAX_PATH);TRACE ("Windows directory %s/n", szD
2008-10-05 15:00:00 735
原创 如何在OLE控件中使用OLE_COLOR数据类型
诸如COleControl : : GetFortColor和COleControl : : GetBacalog : : EndDialog 来中止,无模式对话则是调用CWnd: : DestroyWindow来中止的,函数CDialog : : OnOK和CDialog : : OnCancel调用EndDialog ,所以需要调用DestroyWindow并重置无模式对话的函数。void C
2008-10-05 14:59:00 1574
原创 如何访问桌面窗口
静态函数CWnd:: GetDesktopWindow 返回桌面窗口的指针。下例说明了MFCvoid CFrameWnd::BeginModalState (){ //first count all windows that need to be disabled UINT nCount=0; HWND hWnd=:: GetWindow (:: GetDesktopWin
2008-10-05 14:59:00 441
原创 如何改变控件的字体
由于控件是也是窗口,用户可以调用CWnd: : SetFont指定新字体。该函数用一个Cfont指针,要保证在控件撤消之前不能撤消字体对象。下例将下压按钮的字体改为8点Arial字体://Declare font object in class declaration (.H file ).private : Cfont m_font ;// Set font in class implem
2008-10-05 14:58:00 670 1
python数据处理样例程序
2022-10-27
SocketTransferFile.zip
2019-05-10
你搞过什么有实际意义的算法?
2016-07-23
TA创建的收藏夹 TA关注的收藏夹
TA关注的人