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.
Here is a solution: put these lines at the beginning of the script to hide the console window
(import "kernel32.dll" "FreeConsole")
(FreeConsole)
Or create a shortcut for the script with this in the target field :"C]<name_of_the_script>[/i].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
:-)
Sorry, but this code do not work.
I do not use guiserver.
[/img]
on windows use ->
(import "kernel32.dll" "FreeConsole")
(FreeConsole)
or arnt you using window? or "what" version are you using?
I am using windows XP SP3
it is given code:
(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)
yes the documentation mentions "providing the full path" when using import..
Please try that for the kernel32.dll ...
I think you should put
(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 ?
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
Xytroxon, thanks for CHP !
It works fine and easily in a batch file.
:-)
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.
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
Quote from: "newBert"
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 (//http) must be the best solution in this case.
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/files_lisp/newlispw.7z
and sample program for build exe module from NewLisp code is here
http://santysoft.narod.ru/programs/files_lisp/nl_build_exe.7z
Thanks.