小第是vc的菜鸟,基本没碰过,现工作原因需要在明天做一个实现以下功能的程序
1。系统启动时自动启动程序
2。程序启动后只显示在系统托盘中,点击右键弹出主窗口
3。程序每隔一段时间检测一下,如果达到自定义的某一种条件,则自动弹出主窗口
哪位有类似代码能提供一下,或者指点一下么
只有40分了

解决方案 »

  1.   

    1 注册表
    2 Shell_NotifyIcon
    3 Timer关于1、2请搜索论坛帖
      

  2.   

    csdn的搜索引擎找一下把,这类问题多的都烂了,肯定有可以解决的帖子的
      

  3.   

    1.
    设置程序自动运行。  很多监控软件要求软件能够在系统重新启动后不用用户去点击图标启动项目,而是直接能够启动运行,方法是写注册表Software\\Microsoft\\Windows\\CurrentVersion\\Run。参考程序可以见下:(查找程序目录的执行文件,存在则进行添加注册表操作)         HKEY RegKey;
             CString sPath;
             GetModuleFileName(NULL,sPath.GetBufferSetLength(MAX_PATH+1),MAX_PATH);
             sPath.ReleaseBuffer();
             int nPos;
        nPos=sPath.ReverseFind('\\');
        sPath=sPath.Left(nPos);
        CString lpszFile=sPath+"\\****.exe";//这里加上你要查找的执行文件名称
        CFileFind fFind;
        BOOL bSuccess;
        bSuccess=fFind.FindFile(lpszFile);
        fFind.Close();
        if(bSuccess)
        {
            CString fullName;
            fullName=lpszFile;
            RegKey=NULL;
            RegOpenKey(HKEY_LOCAL_MACHINE,"Software\\Microsoft\\Windows\\CurrentVersion\\Run",&RegKey);
            RegSetValueEx(RegKey,"*****",0,REG_SZ,(const unsigned char*)(LPCTSTR)fullName,fullName.GetLength());//这里加上你需要在注册表中注册的内容
            this->UpdateData(FALSE);
        }
        else
        {
            theApp.SetMainSkin();
            ::AfxMessageBox("没找到执行程序,自动运行失败");
            exit(0);
        }
      

  4.   

    2.
    http://www.vckbase.com/document/finddoc.asp?keyword=tray
      

  5.   

    3.添加WM_TIMER消息响应函数,在函数里对条件进行判断
      

  6.   

    网上很多系统托盘的现成类,拿到你程序里面直接用就可以了.....
    自动运行?注册表的那几个键里面加入你的程序的路径就可以了
    自动启动程序
    HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunServicesOnce
    HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\Run
    HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunServices
    HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunOnce\Setup
    HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunOnce
    HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run
    HKEY_CURRENT_USER\Software\Microsoft\WindowsNT\CurrentVersion\Windows\loadHKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunServicesOnce
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer\Run
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunServices
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce\Setup
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce\Setup
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsNT\CurrentVersion\Winlogon\Userinit