1,在Form建立之后,Form本身就是隐藏的,这时候你执行的隐藏语句没什么效果。Application初始化完成开始RUN的时候,会根据主窗口的Visible属性来显示Form。你可以修改Application的ShowMainForm属性,就可以不显示主窗口了。2,工程属性中Packages页中去掉Build with...对那个选项。

解决方案 »

  1.   

    问: 怎样隐藏应用程序的任务条图标 
    答: 
    首先,请看看这些术语。系统托盘是一个在任务条右角的小方框,在托盘了应用程序可以显示小图标。任务条是可以在屏幕上伸展的工具栏。它就是程序图标所在的位置。想隐藏程序的任务条图标,你可以应用ShowWindow函数并传给它Application->Handle窗口句柄。     ShowWindow(Application->Handle, SW_HIDE); 
    若想让任务条图标再出现,只需将SW_HIDE改为SW_SHOW。     ShowWindow(Application->Handle, SW_SHOW); 
    注: 你可以设置主窗口的Visible属性为false来隐藏它。 注: 通过ShowWindow来隐藏窗口的任务条图标是不持久的。某些动作会使任务条图标重现。你可以将隐藏的应用程序窗口设为Tool Window来移走程序的任务条图标而避免它再次出现。Tool windows永远不会有任务条图标。 使应用程序窗口成为一个Tool Window有一个副作用:当用户按下Alt-TAB时它将不在程序列表中出现。你可以调用API函数GetWindowLong和SetWindowLong来使应用程序窗口成为一个Tool Window。     WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int) 
        {         DWORD dwExStyle = GetWindowLong(Application->Handle, GWL_EXSTYLE); 
            dwExStyle |= WS_EX_TOOLWINDOW; 
            SetWindowLong(Application->Handle, GWL_EXSTYLE, dwExStyle);         try 
            { 
                Application->Initialize(); 
                Application->CreateForm(__classid(TForm1), &Form1); 
                Application->Run(); 
            } 
            catch (Exception &exception) 
            { 
                Application->ShowException(&exception); 
            } 
            return 0; 
        } 
      

  2.   

    这两句需要窗体handle, 在oncreate里面窗体还没有得到句柄所以调用要出错,你在onActivate事件中加这两句话就行了。
    你用的是我发给你的BDE5.11吗?
    它用来在没有安装BDE或BDE损坏的机子上安装或恢复BDE的,你是不是用错了??
    还有,这个BDE5.11的安全性绝对可靠!
    至于出现“启动程序时错,未找到.DLL--Vcl50.bpl !”是不是你程序编译时钩选了“Build with runtime packages”?你检查一下!
      

  3.   

    TO LAZA:
     1、如果打包时不选“Build with runtime packages”,程序一下大了几百K,而且在别的机子上运行时总是提示:“无法初始化 BDE !”,难道说我打包时操作有问题 ? 请你再给我指点一下吧。
     2、 另外,我在程序里用 systemparametersinfo(spi_screensaverrunning,1,@temp,0),屏蔽了系统热键,可是不知道该如何恢复,看了帮助,也没找到一个例子,你再帮我看看。
     3、通过什么可以判断系统是否处于空闲状态 ?
      

  4.   

    TO LAZA:
     1、如果打包时不选“Build with runtime packages”,程序一下大了几百K,而且在别的机子上运行时总是提示:“无法初始化 BDE !”,难道说我打包时操作有问题 ? 请你再给我指点一下吧。
     2、 另外,我在程序里用 systemparametersinfo(spi_screensaverrunning,1,@temp,0),屏蔽了系统热键,可是不知道该如何恢复,看了帮助,也没找到一个例子,你再帮我看看。
     3、通过什么可以判断系统是否处于空闲状态 ?
      

  5.   

    1.就是这样的,delphi没办法,不像VC把一些系统资源放到Windows系统中了。所以delphi执行程序比较大。 
    2.systemparametersinfo(spi_screensaverrunning,0,@temp,0).
    3.Application.OnIdle;能截获 ‘程序空闲‘,系统空闲要使用信号量,开线程控制。使用MsgWaitForMultipleObjectsEx()函数吧,我没用过。哎黔驴技穷了。  :(关于程序的安装: 如果你那里有我给你的BDE安装包,你可以制作一个自解压文件释放到目标路径,然后执行包内的bde5.11.exe即可,但最好还是用安装程序来制作更专业一些,推荐使用 installvise或createinstall等小软件。
      

  6.   

    你有没有installvise或createinstall啊,给我发一个吧,谢谢 !
      

  7.   

    先给你一个网址http://211.92.141.50/hh/patch3/ha-ivise351-ldr.zip
    如果想自己做 bde支持的安装程序,可以用 http://211.92.141.50/hh/soft5/wise811.zip
    如果觉得使用困难,那就用winrar2.8做自释放文件,在选项里设置释放完毕运行bde5.11.exe,缺点是安装完毕后需要手工删除bde5.11.exe。
    如果不行请和我联系  [email protected] 
      

  8.   

    unique 是专业的软件发布高手。不明白的问他好了。