free関数でメモリ領域を解放するところでエラーが出ます。
どこが悪いのでしょうか。
コード: 全て選択
'-----------------------------------------------------------------------------
' イベント プロシージャ
'-----------------------------------------------------------------------------
' このファイルには、ウィンドウ [MainWnd] に関するイベントをコーディングします。
' ウィンドウ ハンドル: hMainWnd
' TODO: この位置にグローバルな変数、構造体、定数、関数を定義します。
'-----------------------------------------------------------------------------
' ウィンドウメッセージを処理するためのコールバック関数
Function MainWndProc(hWnd As HWND, dwMsg As DWord, wParam As WPARAM, lParam As LPARAM) As DWord
' TODO: この位置にウィンドウメッセージを処理するためのコードを記述します。
' イベントプロシージャの呼び出しを行います。
MainWndProc=EventCall_MainWnd(hWnd,dwMsg,wParam,lParam)
End Function
'-----------------------------------------------------------------------------
' ここから下は、イベントプロシージャを記述するための領域になります。
Sub MainWnd_Destroy()
Test_DestroyObjects()
PostQuitMessage(0)
End Sub
Sub MainWnd_CommandButton1_Click()
Dim hEdit As HWND
Dim EditStr As BytePtr
Dim MemoryF As Byte
hEdit=GetDlgItem(hMainWnd,EditBox1)
Select Case MemoryF
Case 0
EditStr=malloc(SendMessage(hEdit,WM_GETTEXTLENGTH +1,0,0))
MemoryF = 1
Case 1
realloc( EditStr,SendMessage (hEdit,WM_GETTEXTLENGTH +1,0,0))
End Select
GetWindowText(hEdit,EditStr,SendMessage(hEdit,WM_GETTEXTLENGTH,0,0) +1)
MsgBox 0,MakeStr(EditStr)
free(EditStr) 'ここでエラーが出てしまいます。
End Sub