by たかせ » 2013年8月07日(水) 16:54
編集対象がLong/Word型などの変数のときはsprintfの部分を次のように変更してください。
sprintf(Sumtime As VoidPtr,"%02d/%02d %02d:%02d:%02d",_
tLMTp1.wMonth,tLMTp1.wDay,tLMTp1.wHour,tLMTp1.wMinute,tLMTp1.wSecond)
下記の場合だとポインタ変数が指す文字列の編集と扱われます。
つまり文字列データを編集するときの方法となります。
sprintf(Sumtime As VoidPtr,"%02s/%02s %02s:%02s:%02s",_
tLMTp1.wMonth,tLMTp1.wDay,tLMTp1.wHour,tLMTp1.wMinute,tLMTp1.wSecond)
この場合はプログラムでアクセスできないアドレスを参照しようとしたので実行時にエラーになったと思われます。
sprintfの仕様についてはABのヘルプに記載されていませんがパラメータの指定方法はwsprintfとほぼ同じです。
よろしくお願いします。
編集対象がLong/Word型などの変数のときはsprintfの部分を次のように変更してください。
sprintf(Sumtime As VoidPtr,"%02d/%02d %02d:%02d:%02d",_
tLMTp1.wMonth,tLMTp1.wDay,tLMTp1.wHour,tLMTp1.wMinute,tLMTp1.wSecond)
下記の場合だとポインタ変数が指す文字列の編集と扱われます。
つまり文字列データを編集するときの方法となります。
sprintf(Sumtime As VoidPtr,"%02s/%02s %02s:%02s:%02s",_
tLMTp1.wMonth,tLMTp1.wDay,tLMTp1.wHour,tLMTp1.wMinute,tLMTp1.wSecond)
この場合はプログラムでアクセスできないアドレスを参照しようとしたので実行時にエラーになったと思われます。
sprintfの仕様についてはABのヘルプに記載されていませんがパラメータの指定方法はwsprintfとほぼ同じです。
よろしくお願いします。