by 矢田裕康 » 2005年10月16日(日) 20:01
テキストファイル「test.txt」をBasic Promptに表示させる下のようなものを作ってみました。
メッセージボックスではうまく表示されるのに print buffer では数字が表示されるだけで駄目でした。
そこで Strjng型の変数を作って下のようにしたら表示できましたがこれでよいでしょうか?
MessageBox関数の第2パラメータの文字列とprint命令語の文字列との違いがわかりません。
#N88BASIC
Dim path[MAX_PATH] as Byte
Dim hFile as DWord
Dim FileSize As Long
Dim buffer as BytePtr
Dim dwAccessByte As DWord
Dim hWnd As DWord
dim strText as String '表示する文字列
hFile=CreateFile("test.txt",GENERIC_READ,0,ByVal 0,OPEN_EXISTING,0,0)
If hFile<>INVALID_HANDLE_VALUE Then
FileSize=GetFileSize(hFile,0)
buffer=malloc(FileSize+1)
ReadFile(hFile,buffer,FileSize,VarPtr(dwAccessByte),ByVal 0)
buffer[dwAccessByte]=0
CloseHandle(hFile)
'MessageBox(0,buffer,"ファイルの内容",MB_OK)
strText=buffer
print strText
free(buffer)
End If
テキストファイル「test.txt」をBasic Promptに表示させる下のようなものを作ってみました。
メッセージボックスではうまく表示されるのに print buffer では数字が表示されるだけで駄目でした。
そこで Strjng型の変数を作って下のようにしたら表示できましたがこれでよいでしょうか?
MessageBox関数の第2パラメータの文字列とprint命令語の文字列との違いがわかりません。
#N88BASIC
Dim path[MAX_PATH] as Byte
Dim hFile as DWord
Dim FileSize As Long
Dim buffer as BytePtr
Dim dwAccessByte As DWord
Dim hWnd As DWord
dim strText as String '表示する文字列
hFile=CreateFile("test.txt",GENERIC_READ,0,ByVal 0,OPEN_EXISTING,0,0)
If hFile<>INVALID_HANDLE_VALUE Then
FileSize=GetFileSize(hFile,0)
buffer=malloc(FileSize+1)
ReadFile(hFile,buffer,FileSize,VarPtr(dwAccessByte),ByVal 0)
buffer[dwAccessByte]=0
CloseHandle(hFile)
'MessageBox(0,buffer,"ファイルの内容",MB_OK)
strText=buffer
print strText
free(buffer)
End If