ページ 11

Writeが使えない・・・・

Posted: 2005年6月09日(木) 18:05
by Mario2
AB最新版(4.01.02)でWriteが使えません。
しかも、エラー表示が
「MainWnd.sbp(256) - "Print" 無効な識別子です」
と「Write」から「Print」に変わってしまっています。
どうにか出来ませんでしょうか?ソフトでオープンしたファイルのログを記録させるために使いたいのですが(他にも良い方法があるのかもしれませんが)・・・・

(ちなみに、ログファイル書き出し処理は

コード: 全て選択

Sub Logfile(log As String)
Open "log.txt" For Append As 1
Write log
Close 1
End Sub
)
です。

Posted: 2005年6月09日(木) 21:07
by hira

コード: 全て選択

Write log
この行を、

コード: 全て選択

Print #1,log
に変えたら成功しました。試してみてください。

Posted: 2005年6月09日(木) 21:36
by Mario2
>

コード: 全て選択

Write log
> この行を、
>
>

コード: 全て選択

Print #1,log
> に変えたら成功しました。試してみてください。

返信ありがとうございます。試してみたところ、ちゃんとファイルに出力できました。
ありがとうございました。
((本題とは、ずれますが)「Write」と書いているのに「Print」のエラーが出るのはおかしいと思うのですけどね・・・・)

Posted: 2005年6月09日(木) 22:19
by イグトランス
ヘルプを見る限りではこういう風に書けばいいのではないかと思います。

コード: 全て選択

Write #1, log

Posted: 2005年6月14日(火) 12:05
by NoWest
> ((本題とは、ずれますが)「Write」と書いているのに「Print」のエラーが出るのはおかしいと思うのですけどね・・・・)

Write命令はABのライブラリで定義されています。(stdio.hのprintfみたいに)

PrintとWriteの基本的な動作が同じであるため、Write命令が内部でPrint命令を呼び出しているんでしょう。

ですから、Write命令のパラメータが間違っていたりするとコンパイラがPrint命令が間違っていると勘違いするのでしょう。