VisualC++MFC

所属分类:C#编程
开发工具:Visual C++
文件大小:2572KB
下载次数:9
上传日期:2008-12-11 20:07:27
上 传 者4101
说明:  Visual C++ MFC编程实例 Visual C++ MFC编程实例
(Visual C++ MFC programming examples Visual C++ MFC programming examples)

文件列表:
Visual C++ MFC编程实例\EXAMPLES\SAMPWZD.INI (3592, 1998-11-07)
Visual C++ MFC编程实例\EXAMPLES\SW.EXE (229376, 1998-11-07)
Visual C++ MFC编程实例\EXAMPLES\WZD\CHILDFRM.CPP (1493, 1998-11-07)
Visual C++ MFC编程实例\EXAMPLES\WZD\CHILDFRM.H (1403, 1998-11-07)
Visual C++ MFC编程实例\EXAMPLES\WZD\MAINFRM.CPP (2555, 1998-11-07)
Visual C++ MFC编程实例\EXAMPLES\WZD\MAINFRM.H (1550, 1998-11-07)
Visual C++ MFC编程实例\EXAMPLES\WZD\RESOURCE.H (488, 1998-11-07)
Visual C++ MFC编程实例\EXAMPLES\WZD\STDAFX.CPP (201, 1998-11-07)
Visual C++ MFC编程实例\EXAMPLES\WZD\STDAFX.H (987, 1998-11-07)
Visual C++ MFC编程实例\EXAMPLES\WZD\WZD.CPP (4315, 1998-11-07)
Visual C++ MFC编程实例\EXAMPLES\WZD\WZD.DSP (4582, 1998-11-07)
Visual C++ MFC编程实例\EXAMPLES\WZD\WZD.DSW (529, 1998-11-07)
Visual C++ MFC编程实例\EXAMPLES\WZD\WZD.H (1333, 1998-11-07)
Visual C++ MFC编程实例\EXAMPLES\WZD\WZD.RC (12533, 1998-11-07)
Visual C++ MFC编程实例\EXAMPLES\WZD\WZDDOC.CPP (1682, 1998-11-07)
Visual C++ MFC编程实例\EXAMPLES\WZD\WZDDOC.H (1450, 1998-11-07)
Visual C++ MFC编程实例\EXAMPLES\WZD\WZDVIEW.CPP (2491, 1998-11-07)
Visual C++ MFC编程实例\EXAMPLES\WZD\WZDVIEW.H (1849, 1998-11-07)
Visual C++ MFC编程实例\EXAMPLES\WZD\RES\TOOLBAR.BMP (1078, 1998-11-07)
Visual C++ MFC编程实例\EXAMPLES\WZD\RES\WZD.ICO (1078, 1998-11-07)
Visual C++ MFC编程实例\EXAMPLES\WZD\RES\WZD.RC2 (395, 1998-11-07)
Visual C++ MFC编程实例\EXAMPLES\WZD\RES\WZDDOC.ICO (1078, 1998-11-07)
Visual C++ MFC编程实例\EXAMPLES\SWD\DIRDLG.CPP (2892, 1998-11-07)
Visual C++ MFC编程实例\EXAMPLES\SWD\DIRDLG.H (1400, 1998-11-07)
Visual C++ MFC编程实例\EXAMPLES\SWD\PAGE1.CPP (1773, 1998-11-07)
Visual C++ MFC编程实例\EXAMPLES\SWD\PAGE1.H (1273, 1998-11-07)
Visual C++ MFC编程实例\EXAMPLES\SWD\PAGE2.CPP (1954, 1998-11-07)
Visual C++ MFC编程实例\EXAMPLES\SWD\PAGE2.H (1273, 1998-11-07)
Visual C++ MFC编程实例\EXAMPLES\SWD\PAGE3.CPP (1959, 1998-11-07)
Visual C++ MFC编程实例\EXAMPLES\SWD\PAGE3.H (1273, 1998-11-07)
Visual C++ MFC编程实例\EXAMPLES\SWD\PAGE4.CPP (3428, 1998-11-07)
Visual C++ MFC编程实例\EXAMPLES\SWD\PAGE4.H (1460, 1998-11-07)
Visual C++ MFC编程实例\EXAMPLES\SWD\PAGE5.CPP (5084, 1998-11-07)
Visual C++ MFC编程实例\EXAMPLES\SWD\PAGE5.H (1362, 1998-11-07)
Visual C++ MFC编程实例\EXAMPLES\SWD\RESOURCE.H (1595, 1998-11-07)
Visual C++ MFC编程实例\EXAMPLES\SWD\SAMPWZD.CPP (1726, 1998-11-07)
Visual C++ MFC编程实例\EXAMPLES\SWD\SAMPWZD.DSP (5245, 1998-11-07)
Visual C++ MFC编程实例\EXAMPLES\SWD\SAMPWZD.DSW (539, 1998-11-07)
Visual C++ MFC编程实例\EXAMPLES\SWD\SAMPWZD.H (1342, 1998-11-07)
Visual C++ MFC编程实例\EXAMPLES\SWD\SAMPWZD.INI (3592, 1998-11-07)
... ...

///////////////////////////////////////////////////////////////////// // Example file. ///////////////////////////////////////////////////////////////////// WzdPrjct.h -- an include file that defines a project's registry keys ///////////////////////////////////////////////////////////////////// // Modify the Application Class. ///////////////////////////////////////////////////////////////////// // 1) locate the SetRegistryKey() function and change argument to company key // (failure to do this will cause your application's options to be saved to // a .ini file in your system's os directory) SetRegistryKey(COMPANY_KEY); ///////////////////////////////////////////////////////////////////// // Modify the Mainframe Class. ///////////////////////////////////////////////////////////////////// // 1) at start of OnCreate(), call a LoadOptions() helper function LoadOptions1(); // 2) in OnClose(), call a SaveOptions() helper function void CMainFrame::OnClose() { SaveOptions1(); CMDIFrameWnd::OnClose(); } ///////////////////////////////////////////////////////////////////// // if GetProfileBinary()/WriteProfileBinary() are supported in your version of MFC ///////////////////////////////////////////////////////////////////// void CMainFrame::LoadOptions1() { // 1) to load string options m_sOption1=AfxGetApp()->GetProfileString(SETTINGS_KEY,OPTION1_KEY,"Default"); // 2) to load integer options m_nOption2=AfxGetApp()->GetProfileInt(SETTINGS_KEY,OPTION2_KEY, 3 ); // 3) to load binary options BYTE *p; UINT size; m_dOption3=33.3; if (AfxGetApp()->GetProfileBinary(SETTINGS_KEY,OPTION3_KEY, &p, &size )) { memcpy(&m_dOption3,p,size); delete []p; } } void CMainFrame::SaveOptions1() { // 4) to save string options AfxGetApp()->WriteProfileString(SETTINGS_KEY,OPTION1_KEY,m_sOption1); // 5) to save integer options AfxGetApp()->WriteProfileInt(SETTINGS_KEY,OPTION2_KEY, m_nOption2 ); // 6) to save binary options AfxGetApp()->WriteProfileBinary(SETTINGS_KEY, OPTION3_KEY, (BYTE*)&m_dOption3, sizeof(m_dOption3)); } ///////////////////////////////////////////////////////////////////// // if GetProfileBinary()/WriteProfileBinary() are NOT supported on your version of MFC ///////////////////////////////////////////////////////////////////// void CMainFrame::LoadOptions2() { HKEY key; DWORD size, type; if(RegOpenKeyEx( HKEY_CURRENT_USER,APPLICATION_KEY,0,KEY_READ,&key) == ERROR_SUCCESS ) { // 1) to load string options size=128; type = REG_SZ; LPSTR psz = m_sOption1.GetBuffer(size); RegQueryValueEx( key,OPTION1_KEY,0,&type,(LPBYTE)psz,&size ); m_sOption1.ReleaseBuffer(); // 2) to load integer options size=4; type = REG_DWORD; RegQueryValueEx( key,OPTION2_KEY,0,&type,(LPBYTE)&m_nOption2,&size ); // 3) to load binary options size=sizeof(DOUBLE); type = REG_BINARY; RegQueryValueEx( key,OPTION3_KEY,0,&type,(LPBYTE)&m_dOption3,&size ); RegCloseKey( key ); } } void CMainFrame::SaveOptions2() { HKEY key; DWORD size, type, disposition; if (RegOpenKeyEx( HKEY_CURRENT_USER,APPLICATION_KEY,0, KEY_WRITE,&key)!=ERROR_SUCCESS) { RegCreateKeyEx( HKEY_CURRENT_USER,APPLICATION_KEY,0,"", REG_OPTION_NON_VOLATILE,KEY_ALL_ACCESS,NULL, &key,&disposition); } // 4) to save string options type = REG_SZ; size = m_sOption1.GetLength(); RegSetValueEx( key,OPTION1_KEY,0,type,(LPBYTE)LPCSTR(m_sOption1),size ); // 5) to save int options type = REG_DWORD; size = 4; RegSetValueEx( key,OPTION2_KEY,0,type,(LPBYTE)&m_nOption2,size ); // 6) to save binary options type = REG_BINARY; size = sizeof(DOUBLE); RegSetValueEx( key,OPTION3_KEY,0,type,(LPBYTE)&m_dOption3,size ); RegCloseKey( key ); } ///////////////////////////////////////////////////////////////////// // From: Visual C++ MFC Programming by Example by John E. Swanke // Copyright (C) 19*** jeswanke. All rights reserved. /////////////////////////////////////////////////////////////////////

近期下载者

相关文件


收藏者