Dear all,

When I run the program below a window appears for a split second, then disappears and the program exits. Can you help me figure out what's going wrong?

***

import Graphics.Win32.Misc
import Graphics.Win32.GDI.Types
import Graphics.Win32.Window
import System.Win32.DLL
import Foreign.Marshal.Alloc

main = do hInst <- loadLibrary "ole32.dll"
res <- registerClass (style, hInst, Nothing, Nothing, Nothing, Nothing, classname) if res == Nothing then do{putStrLn "Unable to register." ;return()}
                 else putStrLn "Registered."
hwnd <- createWindow classname "Kleer 0" wS_VISIBLE Nothing Nothing Nothing Nothing Nothing Nothing hInst handler
               b <- showWindow hwnd sW_SHOWNORMAL
if b then putStrLn "Window showing" else do{putStrLn "Unable to show window."; return()}
               updateWindow hwnd
               ptr <- mallocBytes 4
               getMessage ptr Nothing
               loop ptr


loop msg =  do translateMessage msg
                      dispatchMessage msg
                      loop msg
handler :: WindowClosure
handler hwnd msg w l = case msg of
wM_CLOSE -> do{destroyWindow hwnd; return 0} _ -> defWindowProc (Just hwnd) msg w l style :: ClassStyle
style = 0

classname = mkClassName "KleerWnd"

***

E.

_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to