Page 1 of 1

Close NewLisp console window

Posted: Mon Jan 05, 2009 2:32 pm
by santy
Hi all.

Now I am testing my gui library. It works very good but newlisp console window is always open.

How can I close this window?

Thanks.

Posted: Mon Jan 05, 2009 5:25 pm
by newBert
Here is a solution: put these lines at the beginning of the script to hide the console window

Code: Select all

(import "kernel32.dll" "FreeConsole") 
(FreeConsole) 
Or create a shortcut for the script with this in the target field :"C:\Program Files\newlisp\guiserver.jar" 47011 "<name_of_the_script>.lsp"
(right click on the created shortcut and select properties, then modifiy the field "target")

P.S.: assuming that you are on Windows, of course

:-)

Posted: Tue Jan 06, 2009 1:34 pm
by santy
Sorry, but this code do not work.
I do not use guiserver.
[/img]

Posted: Tue Jan 06, 2009 1:41 pm
by newdep
on windows use ->

Code: Select all

(import "kernel32.dll" "FreeConsole")
(FreeConsole) 
or arnt you using window? or "what" version are you using?

Posted: Tue Jan 06, 2009 3:16 pm
by santy
I am using windows XP SP3

it is given code:

Code: Select all

(import "kernel32.dll" "FreeConsole") 
(FreeConsole)

(load "sgui.lsp")

(define (menu_demo)
 
 (set 'iWindows (sgui:CreateWin 100 200 195 260 (address "Menu demo Window") ( | sgui:WF_SystemMenu sgui:WF_TitleBar sgui:WF_MinimizeWidget sgui:WF_MaximizeWidget sgui:WF_SizeWidget)))
 ;(println iWindows (number? iWindows)) 
 (if (not (null? iWindows)) 
   (begin 
      (set 'mainMenu (sgui:CreateMainMenu iWindows))
      ;(println mainMenu (number? mainMenu)) 
      (if (not (null? mainMenu))
        (begin   
        (sgui:CreateMenuTitle "File")  
          (sgui:CreateMenuItem 1 "Open")
          (sgui:CreateMenuItem 2 "Save")
          (sgui:CreateMenuItem 3 "Close")
          (sgui:CreateMenuSeparator)
          (sgui:CreateMenuItem 6 "&Exit") 
         (sgui:CreateMenuTitle "Edit")  
          (sgui:CreateMenuItem 118 "Undo")
          (sgui:CreateMenuItem 9 "Redo")
          (sgui:CreateMenuItem 10 "Find")
          (sgui:CreateMenuSeparator)
          (sgui:CreateMenuItem 12 "Find Files") 
        ) 
       )
       (while (!= EventID sgui:WE_CloseWindow)
        (set 'EventID (sgui:StartWinEvent))
       ) 
    (sgui:CloseWin iWindows)
   )
 )
) 

(menu_demo)
(exit)

Posted: Tue Jan 06, 2009 3:36 pm
by newdep
yes the documentation mentions "providing the full path" when using import..
Please try that for the kernel32.dll ...

Posted: Wed Jan 07, 2009 4:53 pm
by newBert
I think you should put

Code: Select all

(import "kernel32.dll" "FreeConsole")
(FreeConsole) 

in the first file, I mean in this case at he beginning of sgui.lsp

I used to act in that way with runtk.lsp...

P.S.: By the way, does the file sgui.lsp have something to do with wxWidgets ?

Posted: Wed Jan 07, 2009 11:09 pm
by xytroxon
Here are three hidden MSdos box launch programs...

From the GTK-server download page:
http://www.gtk-server.org/download.html

Is a link to:
RUN - Run & Stop
http://www.turtle.dds.nl/run/

Which has links to:
CMDOW - Commandline Window Utility [v1.4.3]
http://www.commandline.co.uk/cmdow/

And:
CHP - Create Hidden Process
http://www.commandline.co.uk/chp/

-- xytroxon

Posted: Thu Jan 08, 2009 11:40 am
by newBert
Xytroxon, thanks for CHP !
It works fine and easily in a batch file.

:-)

Posted: Thu Jan 08, 2009 12:57 pm
by santy
to xytroxon

Program work good with CHP.exe.

Thanks.

to newBert
sgui is my little gui library. At this time I am writing wrapper for newLisp.

P.S. May be Lutz Mueller add new option in the newlisp program for gui application.

Posted: Thu Jan 08, 2009 1:49 pm
by pjot
You can also compile your newLisp interpreter with the '-mwindows' compile option. Then there will be no DOS box.

So in 'makefile_mingw' add this to the CFLAGS line:

CFLAGS = -Wall -pedantic -Wno-long-long -c -O1 -g -DWIN_32 -mwindows

But it's a Win32 problem only, of course.

Regards

Posted: Thu Jan 08, 2009 2:36 pm
by newBert
newBert wrote:Xytroxon, thanks for CHP !
It works fine and easily in a batch file.

:-)
However it seems not to work (neither does CMDOW besides) with a GTK based newlisp script.
RUN.EXE must be the best solution in this case.

Posted: Sun Jan 11, 2009 10:34 pm
by santy
Sorry but CHP.exe works bad.

I took source code newlisp (v 10.0.1) and modified it.
Code compiled in old IDE MinGW Developer Studio.


Code and program (without console window) are here
http://santysoft.narod.ru/programs/file ... ewlispw.7z

and sample program for build exe module from NewLisp code is here
http://santysoft.narod.ru/programs/file ... ild_exe.7z

Thanks.