VB Code:
Option Explicit
Private mlngSetup As Long
Public Sub ShowSetup()
Dim typClass As WNDCLASSEX
Dim typMessage As MSG
With typClass
.cbSize = Len(typClass)
.lpfnWndProc = GetWndProc(AddressOf SetupProc)
.hInstance = glngApp
.hIcon = LoadIcon(0&, IDI_APPLICATION)
.hCursor = LoadCursor(0, IDC_ARROW)
.hbrBackground = COLOR_BTNFACE + 1
.lpszMenuName = ""
.lpszClassName = "Setup"
.hIconSm = LoadImage(glngApp, "", IMAGE_ICON, GetSystemMetrics(SM_CXSMICON), _
GetSystemMetrics(SM_CYSMICON), LR_DEFAULTCOLOR)
End With
RegisterClassEx typClass
mlngSetup = CreateWindowEx(0, "Setup", "Setup", WS_VISIBLE Or WS_OVERLAPPEDWINDOW Or DS_MODALFRAME Or WS_CLIPCHILDREN _
Or WS_CLIPSIBLINGS, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, glngMain, _
0&, glngApp, 0&)
Do While GetMessage(typMessage, 0, 0, 0) <> 0
TranslateMessage typMessage
DispatchMessage typMessage
Loop
End Sub
Private Function SetupProc(ByVal hwnd As Long, ByVal message As Long, ByVal wParam As Long, _
ByVal lParam As Long) As Long
Select Case message
Case WM_CREATE
EnableWindow glngMain, False
Case WM_CLOSE
EnableWindow glngMain, True
Case WM_DESTROY
DestroyWindow mlngSetup
PostQuitMessage 0
End Select
SetupProc = DefWindowProc(hwnd, message, wParam, lParam)
End Function