基础版疑难杂症贴汇总(试运行)

傻X 2013-01-19 07:43:21
2013年1月19日开始试运行

疑难杂症汇总规则
...全文
5504 24 打赏 收藏 转发到动态 举报
写回复
用AI写文章
24 条回复
切换为时间正序
请发表友善的回复…
发表回复
coffeeroy2 2015-05-13
  • 打赏
  • 举报
回复
zhichizhichi~
leeshifei 2014-12-10
  • 打赏
  • 举报
回复
有点乱 ,感觉非我想像的
要就要csdn 2013-09-06
  • 打赏
  • 举报
回复
命名管道求助贴http://bbs.csdn.net/topics/390584659,求解!
找赵二狗 2013-09-03
  • 打赏
  • 举报
回复
引用 20 楼 u011898577 的回复:
大家好。我想建立一个登陆窗口,通过输入用户名和密码,然后进行与预先存储好的数据进行比对,比对一致则返回登陆成功。由于我不会数据库操作,所以我想先做的简单一些。我想在cpp文件中预先建立一个员工的类,生成一个类的实例数组,然后把员工的信息保存在数组里。打开窗口时,用户输入的用户名和密码和这个数组里的数据比对。可否请高人指点一下该如何使这个类的数组对象得到初始化,附上我预设的可登入用户名和密码? 谢谢! 很急,请大家尽快帮助一下好吗?
不会用数据库 那就写到文件里面呗
Leo-H 2013-08-31
  • 打赏
  • 举报
回复
大家好。我想建立一个登陆窗口,通过输入用户名和密码,然后进行与预先存储好的数据进行比对,比对一致则返回登陆成功。由于我不会数据库操作,所以我想先做的简单一些。我想在cpp文件中预先建立一个员工的类,生成一个类的实例数组,然后把员工的信息保存在数组里。打开窗口时,用户输入的用户名和密码和这个数组里的数据比对。可否请高人指点一下该如何使这个类的数组对象得到初始化,附上我预设的可登入用户名和密码? 谢谢! 很急,请大家尽快帮助一下好吗?
wshcdr 2013-08-19
  • 打赏
  • 举报
回复
恩,这个好啊
liuyuanrs 2013-08-03
  • 打赏
  • 举报
回复
使用共享库编译出来没问题,静态库编译出来执行错误,求助帖在这http://bbs.csdn.net/topics/390536069?page=1#post-395204186求解啊,谢了啊
cv123cv123 2013-06-24
  • 打赏
  • 举报
回复
#include"windows.h" #include"RESOURCE.H" #include"mmsystem.h" #include"stdio.h" #define WORDLENG 750 //#pragma comment (lib,"winmm.lib") LRESULT CALLBACK WindowProc( HWND hwnd, // handle to window UINT uMsg, // message identifier WPARAM wParam, // first message parameter LPARAM lParam // second message parameter ); BOOL CALLBACK DialogProc( HWND hwndDlg, // handle to dialog box UINT uMsg, // message WPARAM wParam, // first message parameter LPARAM lParam // second message parameter ); HWND hwndlg; int WINAPI WinMain( HINSTANCE hInstance, // handle to current instance HINSTANCE hPrevInstance, // handle to previous instance LPSTR lpCmdLine, // pointer to command line int nCmdShow // show state of window ) { HWND hwnd; MSG msg; WNDCLASS wnd; wnd.cbClsExtra=0; wnd.cbWndExtra=0; wnd.hbrBackground=(HBRUSH)GetStockObject(BLACK_BRUSH); wnd.hCursor=LoadCursor(NULL,IDC_ARROW); wnd.hIcon=LoadIcon(NULL,IDI_ASTERISK); wnd.hInstance=hInstance; wnd.lpfnWndProc=WindowProc; wnd.lpszClassName="ems"; wnd.lpszMenuName=MAKEINTRESOURCE(IDR_MENU1); wnd.style=CS_VREDRAW|CS_HREDRAW; RegisterClass(&wnd); hwnd=CreateWindow("ems", "EMASMIC", WS_OVERLAPPEDWINDOW, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, NULL, NULL, hInstance, NULL); ShowWindow(hwnd,nCmdShow); UpdateWindow(hwnd); while(GetMessage(&msg,NULL,0,0)) { TranslateMessage(&msg); DispatchMessage(&msg); } return msg.wParam; } LRESULT CALLBACK WindowProc( HWND hwnd, // handle to window UINT uMsg, // message identifier WPARAM wParam, // first message parameter LPARAM lParam // second message parameter ) { static PWAVEHDR pwavehdr1,pwavehdr2; static WAVEFORMATEX waveformat; static PBYTE pbuffer1,pbuffer2,psavebuffer; static HWAVEIN phwave; static HWND ctrdig; unsigned long int t; static HINSTANCE hinstance; static HDC dc; static RECT rect; static POINT * point; static HWND hwndscroll,staticbox; char s[8]; static int rang=0; switch(uMsg) { case WM_DESTROY: PostQuitMessage(0); break; case WM_CREATE: pwavehdr1=(PWAVEHDR)malloc(sizeof(WAVEHDR)); pwavehdr2=(PWAVEHDR)malloc(sizeof(WAVEHDR)); psavebuffer=(PBYTE)malloc(1); hinstance=((LPCREATESTRUCT)lParam)->hInstance; GetClientRect(hwnd,&rect); break; case WM_TIMER: ::InvalidateRect(hwnd,NULL,TRUE); ::KillTimer(hwnd,5); break; case MM_WIM_OPEN: EnableMenuItem(GetMenu(hwnd),IDM_ASD,MF_GRAYED); waveInAddBuffer(phwave,pwavehdr1,sizeof(WAVEHDR)); waveInAddBuffer(phwave,pwavehdr2,sizeof(WAVEHDR)); waveInStart(phwave); //::MessageBox(hwnd,"open","ok",MB_OK); break; case MM_WIM_DATA: //POINT point[WORDLENG]; unsigned long te; // int t2; waveInAddBuffer(phwave,((PWAVEHDR)lParam),sizeof(WAVEHDR)); // HDC dc; // RECT rect; te=((PWAVEHDR)lParam)->dwBufferLength; //::sprintf(s,"%d",rect.bottom); // ::MessageBox(hwnd,s,NULL,MB_OK); for( t=0;t<te;t++) {(*(point+t)).x=t*((unsigned long)rect.right/te); //t2=atoi(((PWAVEHDR)lParam)->lpData+t); (*(point+t)).y=rect.bottom/2+40-*(((PWAVEHDR)lParam)->lpData+t)-128; // point[t].y=rect.bottom-t2; } ::PolylineTo(dc,point,((PWAVEHDR)lParam)->dwBufferLength); ::SetTimer(hwnd,5,rang+1,NULL); //::ReleaseDC(hwnd,dc); break; case WM_SIZE: MoveWindow(hwndscroll,0,HIWORD(lParam)-20,200,20,TRUE); break; case WM_HSCROLL: switch(LOWORD(wParam)) { case SB_LINEDOWN: if(rang<100) ++rang; break; case SB_LINEUP: if(rang>0) --rang; break; case SB_THUMBTRACK: case SB_THUMBPOSITION: rang=HIWORD(wParam); break; } SetScrollPos(hwndscroll,SB_CTL,rang,TRUE); ::sprintf(s,"%d",rang); ::SetWindowText(staticbox,s); // ::KillTimer(hwnd,5); break; case WM_COMMAND: { switch(LOWORD(wParam)) { case IDM_ASD: pbuffer1=(PBYTE)malloc(WORDLENG); pbuffer2=(PBYTE)malloc(WORDLENG); point=(POINT *)malloc(WORDLENG*sizeof(POINT)); memset(pbuffer1,0,WORDLENG); memset(pbuffer2,0,WORDLENG); memset(point,0,WORDLENG); // ::sprintf(s,"%d",*pbuffer1); // ::MessageBox(hwnd,s,"df",MB_OK); if(!pbuffer1||!pbuffer2) { free(pbuffer1); free(pbuffer2); ::MessageBox(hwnd,"pp","ok",MB_OK); } waveformat.cbSize=0; waveformat.nAvgBytesPerSec=11025; waveformat.nBlockAlign=1; waveformat.nChannels=1; waveformat.nSamplesPerSec=11025; waveformat.wBitsPerSample=8; waveformat.wFormatTag=WAVE_FORMAT_PCM ; if(waveInOpen(&phwave,WAVE_MAPPER,&waveformat,(DWORD)hwnd,0,CALLBACK_WINDOW )) { free(pbuffer1); free(pbuffer2); ::MessageBox(hwnd,"OPENFALSE","FALSE",MB_OK); } pwavehdr1->dwBufferLength=WORDLENG; pwavehdr1->dwBytesRecorded=0; pwavehdr1->dwFlags=0; pwavehdr1->dwLoops=1; pwavehdr1->dwUser=0; pwavehdr1->lpData=(char *)pbuffer1; pwavehdr1->lpNext=NULL; pwavehdr1->reserved=0; waveInPrepareHeader(phwave,pwavehdr1,sizeof(WAVEHDR)); pwavehdr2->dwBufferLength=WORDLENG; pwavehdr2->dwBytesRecorded=0; pwavehdr2->dwFlags=0; pwavehdr2->dwLoops=1; pwavehdr2->dwUser=0; pwavehdr2->lpData=(char *)pbuffer1; pwavehdr2->lpNext=NULL; pwavehdr2->reserved=0; waveInPrepareHeader(phwave,pwavehdr2,sizeof(WAVEHDR)); GetClientRect(hwnd,&rect); dc=GetDC(hwnd); SelectObject(dc,CreatePen(PS_SOLID,0,RGB(255,255,0))); break; case IDM_TIMER: hwndscroll=CreateWindow(TEXT("scrollbar"),NULL,WS_CHILD|WS_VISIBLE|WS_TABSTOP, rect.left,rect.bottom-20,200 ,20,hwnd,NULL,hinstance,NULL); ::SetScrollRange(hwndscroll,SB_CTL,0,600,FALSE); ::SetScrollPos(hwndscroll,SB_CTL,0,FALSE); staticbox=CreateWindow(TEXT("static"),NULL,WS_CHILD|WS_VISIBLE,rect.left+200, rect.bottom-20,22,20,hwnd,NULL,hinstance,NULL); break; case IDM_GG: hwndlg=CreateDialog( hinstance,MAKEINTRESOURCE(IDD_DIALOG1),hwnd,DialogProc); break; case IDM_DEF: char s[8]; ctrdig=GetDlgItem( hwndlg,IDC_LIST1); for(int t=0;t<WORDLENG;t++) { sprintf(s,"%d",*(pbuffer1+t)-128); SendMessage(ctrdig,LB_ADDSTRING,0,(LPARAM)s); } break; } } break; default: return DefWindowProc(hwnd,uMsg,wParam,lParam); } } BOOL CALLBACK DialogProc( HWND hwndDlg, // handle to dialog box UINT uMsg, // message WPARAM wParam, // first message parameter LPARAM lParam // second message parameter ) { switch(uMsg) { case WM_INITDIALOG: return TRUE; case WM_COMMAND: switch(LOWORD(wParam)) { case IDOK: case IDCANCEL: EndDialog(hwndDlg,0); return TRUE; } return TRUE; } return FALSE; }
u010621149 2013-06-16
  • 打赏
  • 举报
回复
// MainFrm.cpp : implementation of the CMainFrame class // #include "stdafx.h" #include "MyDialog.h" #include "MainFrm.h" #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif ///////////////////////////////////////////////////////////////////////////// // CMainFrame IMPLEMENT_DYNCREATE(CMainFrame, CFrameWnd) BEGIN_MESSAGE_MAP(CMainFrame, CFrameWnd) //{{AFX_MSG_MAP(CMainFrame) ON_WM_CREATE() ON_COMMAND(IDM_DLG1, OnDlg1) //}}AFX_MSG_MAP END_MESSAGE_MAP() static UINT indicators[] = { ID_SEPARATOR, // status line indicator ID_INDICATOR_CAPS, ID_INDICATOR_NUM, ID_INDICATOR_SCRL, }; ///////////////////////////////////////////////////////////////////////////// // CMainFrame construction/destruction CMainFrame::CMainFrame() { // TODO: add member initialization code here } CMainFrame::~CMainFrame() { } int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct) { if (CFrameWnd::OnCreate(lpCreateStruct) == -1) return -1; if (!m_wndToolBar.CreateEx(this, TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE | CBRS_TOP | CBRS_GRIPPER | CBRS_TOOLTIPS | CBRS_FLYBY | CBRS_SIZE_DYNAMIC) || !m_wndToolBar.LoadToolBar(IDR_MAINFRAME)) { TRACE0("Failed to create toolbar\n"); return -1; // fail to create } if (!m_wndStatusBar.Create(this) || !m_wndStatusBar.SetIndicators(indicators, sizeof(indicators)/sizeof(UINT))) { TRACE0("Failed to create status bar\n"); return -1; // fail to create } // TODO: Delete these three lines if you don't want the toolbar to // be dockable m_wndToolBar.EnableDocking(CBRS_ALIGN_ANY); EnableDocking(CBRS_ALIGN_ANY); DockControlBar(&m_wndToolBar); return 0; } BOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs) { if( !CFrameWnd::PreCreateWindow(cs) ) return FALSE; // TODO: Modify the Window class or styles here by modifying // the CREATESTRUCT cs return TRUE; } ///////////////////////////////////////////////////////////////////////////// // CMainFrame diagnostics #ifdef _DEBUG void CMainFrame::AssertValid() const { CFrameWnd::AssertValid(); } void CMainFrame::Dump(CDumpContext& dc) const { CFrameWnd::Dump(dc); } #endif //_DEBUG ///////////////////////////////////////////////////////////////////////////// // CMainFrame message handlers void CMainFrame::OnDlg1() { // TODO: Add your command handler code here CAA dlg;//'CAA' : undeclared identifier这错了 dlg.DoModal(); }
qlu1990 2013-05-12
  • 打赏
  • 举报
回复
http://bbs.csdn.net/topics/390455483求指导
phonybug 2013-04-26
  • 打赏
  • 举报
回复
找到答案了...hwndScroll句柄应该设置为静态变量的
wp909737771 2013-04-26
  • 打赏
  • 举报
回复
2010中经常遇到CString.Right、Left、ReverseFind等功能失效什么原因啊,发的帖子都沉得找不到了快,在这里弱弱的问一下,有人可以帮忙解决吗?菜鸟一个,真心求解啊
phonybug 2013-04-25
  • 打赏
  • 举报
回复
没人的话我来问了.... 请问下面这个代码里面用setscrollpos函数设置滚动条位置,为什么编译后拖动滚动条松开之后,滑块又回到了厨师位置呢
#include <windows.h>
 

LRESULT CALLBACK WndProc (HWND, UINT, WPARAM, LPARAM) ;

int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance,
                    PSTR szCmdLine, int iCmdShow)
{
     static TCHAR szAppName[] = TEXT ("Main Frame") ;
     HWND         hwnd ;
     MSG          msg ;
     WNDCLASS     wndclass ;

     wndclass.style         = CS_HREDRAW | CS_VREDRAW ;
     wndclass.lpfnWndProc   = WndProc ;
     wndclass.cbClsExtra    = 0 ;
     wndclass.cbWndExtra    = 0 ;
     wndclass.hInstance     = hInstance ;
     wndclass.hIcon         = LoadIcon (NULL, IDI_APPLICATION) ;
     wndclass.hCursor       = LoadCursor (NULL, IDC_ARROW) ;
     wndclass.hbrBackground = (HBRUSH) GetStockObject (WHITE_BRUSH) ;
     wndclass.lpszMenuName  = NULL ;
     wndclass.lpszClassName = szAppName ;

     if (!RegisterClass (&wndclass))
     {
          MessageBox (NULL, TEXT ("This program requires Windows NT!"), 
                      szAppName, MB_ICONERROR) ;
          return 0 ;
     }
     
     hwnd = CreateWindow (szAppName,                  // window class name
                          TEXT ("Main"), 		  // window caption
                          WS_OVERLAPPEDWINDOW,        // window style
                          CW_USEDEFAULT,              // initial x position
                          CW_USEDEFAULT,              // initial y position
                          CW_USEDEFAULT,              // initial x size
                          CW_USEDEFAULT,              // initial y size
                          NULL,                       // parent window handle
                          NULL,                       // window menu handle
                          hInstance,                  // program instance handle
                          NULL) ;                     // creation parameters
     
     ShowWindow (hwnd, iCmdShow) ;
     UpdateWindow (hwnd) ;
     
     while (GetMessage (&msg, NULL, 0, 0))
     {
          TranslateMessage (&msg) ;
          DispatchMessage (&msg) ;
     }
     return msg.wParam ;
}

LRESULT CALLBACK WndProc (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
{
     HWND		    hwndScroll;     
     int			iPos;
     
     switch (message)
     {
     case WM_CREATE:
          
            hwndScroll = CreateWindow(TEXT("scrollbar"),
			  							TEXT("HORZ"),
									  	WS_CHILD | WS_VISIBLE | SBS_HORZ,
                                        0, 0, 200, 20,
                                        hwnd,
                                        (HMENU)1001,
                                        ((LPCREATESTRUCT)lParam)->hInstance,
                                        NULL);
            SetScrollRange(hwndScroll, SB_CTL, 0, 200, FALSE);
            return 0 ;
          
     case WM_PAINT:
            return 0 ;
            
	 case WM_HSCROLL:
	 	  switch(LOWORD(wParam))
	 	  {
	        case SB_THUMBPOSITION:
                iPos = HIWORD(wParam) ;
                break ;
                default:
			   	break;
  	 	  }

            SetScrollPos(hwndScroll, SB_CTL, iPos, TRUE);
            return 0 ;
     case WM_DESTROY:
            PostQuitMessage (0) ;
            return 0 ;
     }
     return DefWindowProc (hwnd, message, wParam, lParam) ;
}
3124222卜艺著 2013-04-19
  • 打赏
  • 举报
回复
支持你,顶你、、
汤豆豆 2013-04-16
  • 打赏
  • 举报
回复
纳尼,人好少啊~~~~啊啊啊啊
jimette 2013-03-12
  • 打赏
  • 举报
回复
chenyuntian 2013-03-08
  • 打赏
  • 举报
回复
音乐男 2013-02-26
  • 打赏
  • 举报
回复
很好的帖子集,从错误中学习效率事半功倍
oWuXie12345 2013-01-30
  • 打赏
  • 举报
回复
傻X 2013-01-22
  • 打赏
  • 举报
回复
没人回帖我也没办法,凡事按照规则来。实在没人就关了,小版主当的省心省力,多好。
加载更多回复(3)

16,472

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧