在PROJECT中添加:
applicationg.showmainform:=false;!

解决方案 »

  1.   

    begin
      Application.Initialize;
      Application.CreateForm(TForm1, Form1);
      application.ShowMainForm:=false;
      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~刚才笔误,写错了!
      Application.Run;
    end.
      

  2.   

      SetWindowLong(Application.Handle,GWL_EXSTYLE,WS_EX_TOOLWINDOW);
      

  3.   

    on create
      Top := -1000;
      

  4.   

     在Delphi中完全不需要一个主窗体
      

  5.   

    wgsun(土豆) 
    你能仔细说说吗?
      

  6.   

    解决方法胡乱点评:
    1、application.ShowMainForm:=false;最好。
    2、SetWindowLong(Application.Handle,GWL_EXSTYLE,WS_EX_TOOLWINDOW);其次,因为还是会看到窗体一闪而过,不过比在OnPaint事件里设Visible属性的方法要好。
    3、 on create
      Top := -1000; 好得没谱了。:)
    4、除了控制台程序以外,还可以怎样做一个没有主窗体的程序呢?
      

  7.   

    已经解决了
    application.ShowMainForm:=false
      

  8.   

    不需要主窗体的Delphi程序有哪些呢?举个例子好吗?怎样做的。
      

  9.   

    直接用api写的程序可完全处于你的控制之下,
    但如果它的功能复杂一点就............
      

  10.   

    http://kol.nm.ru
    http://xcl.cjb.net
    http://mercury.spaceports.com/~bonanzas/kol
    有许多相关资料去看看吧
    特别是它的kol套件
      

  11.   

    不用vcl就可以了,自己用pascal+api
      

  12.   

    service程序大多真正没有窗体,或者直接写dpr文件可以没有窗体,不过没有窗体就没有消息循环,对于这个程序的图标和菜单都需要处理消息的,可能不大可能。实际上,windows系统中的很多程序也是隐藏了窗体(可以用SPY++看看),这也没什么不好。
      

  13.   

    是不是没有了消息循环,应用程序也就立即结束了呢?如果这样,应用程序就不能没有消息循环啊。这可如何是好?
    service又是一种怎样的程序呢?和我们一般所写的应用程序有何区别呢?
      

  14.   

    pascal+api的方法实际上也要产生一个窗体(隐藏的),否则也无法做。对了,顺便问几个问题:(我会另开帖子加分的,另加70分,绝不食言!)1、C++里数组名表示的就是一个指针,对一个char Array1[100]数组,你可以这样写PointerVariable=Array1;表示指向Array1的第一个元素的位置。在DelPhi里面有没有类似的情况呢?好像AnsiString类型和类类型的变量就隐含地表示一个指针,对吗?
    2、Win32API中有一个函数RegisterClass(lpWndClass),函数参数表示指向WndClass结构的一个指针。但在DelPhi的Windows.pas库单元里,RegisterClass()函数的参数变成TWndClass记录类型,这样我写RegisterClass(Wndclass)才对,写RegisterClass(@Wndclass)就告诉我错了,这是为什么呢?难道它们不一样吗?
    3、我的一个使用CreateWindow()API函数例子怎么都不对,麻烦大家帮看看怎么回事?
    procedure createwindow;
    var
      wc : twndclass;
      w : hwnd;
    begin
      with wc do begin
        style := 0;
        lpfnwndproc := @wndproc;
        cbclsextra := 0;
        cbwndextra := 0;
        hicon := 0;
        hcursor := 0;
        hbrbackground :=COLOR_BACKGROUND;//di2001.jpg;
        lpszmenuname := nil;
        lpszclassname := 'mytrayiconclass';
        hinstance := {system.}Hinstance;
      end;
      SetLasterror(0);
      registerclass(wc);
      w := windows.createwindow(wc.lpszClassName, 'myveryowntrayiconwindow', ws_overlappedwindow, CW_USEDEFAULT, CW_USEDEFAULT, 0, 0, 0, 0, hinstance, nil);
      showwindow(w,sw_hide);
      updatewindow(w);
      mainwindow := w;
    end;
    上面的w变量总是为0,怎么回事?
    4、我在delphi的IDE里调用API函数时,写完函数名再写一个左括弧,IDE会自动提示函数参数信息,这本来挺好的,可是如果我用一个结构(记录)类型的变量作参数的话,IDE就只是显示函数的参数信息,而不会在我的记录型变量的“.”符号右边把记录的域列表显示出来(类类型的变量也是如此),除非我在屏幕别的地方点击一下鼠标,使函数参数信息消失,这时才会显示那个列表,可函数的参数信息又没了,这可怎么办?可以再显示出来吗?VC++里是可以再显示的,不知delphi也可以吗?
      

  15.   

    service程序是系统启动时会自动加载的程序。你可以在Win2000的任务里看一下,有许多exe程序是没有窗体,也不会在托盘区出现的,service就是这样的程序
      

  16.   

    你上面说的最后一个问题,在Delphi里用快捷键Ctrl + 空格可以再次出现,但这个快捷键和中英文输入切换的快捷键冲突,你可以把输入法的快捷键改掉
      

  17.   

    这样吧
    你用showwindow(application.handle,sw_hide);来隐藏作务栏里的任务条
      

  18.   

    CaoBingHao(茶叶里的碱)
    控制台程序?是那种dos程序吗?
    tongki_8()
    你要源码的话,我发给你。E_MAIL?
      

  19.   

    如果没有窗口,就没有消息循环,程序一运行完就结束了。console可以说并不是严格的win32程序。