AB4でTextEditorのファイル読み込みでつまずきました。

ActiveBasicでのプログラミングでわからないこと、困ったことなどがあったら、ここで質問してみましょう(質問を行う場合は、過去ログやWeb上であらかじめ問題を整理するようにしましょう☆)。
返信する
メッセージ
作成者
のっぽ
記事: 2
登録日時: 2006年5月06日(土) 23:03

AB4でTextEditorのファイル読み込みでつまずきました。

#1 投稿記事 by のっぽ »

書籍「手作りUSB機器」を試したいと思い、ABを試し始めました。
で、その書籍は置いておいて、「Win32プログラミング講座」を
やってみていて、「~ Step11. テキスト エディタを作る ~」で
つまずいてしまいました。

「ab424.zip」を使って試していたのですが、テキストファイルの
読み込みが出来ず、いくらやっても何も出てこない状態でした。
最初はコードを打ち込んでいたのですが、ミスはないようでした。
まぁ、それでは信憑性が低いかと思い、Webからコピー&ペイスト
してみたのですが、やっぱり駄目でした。

「ここまでやって駄目なら、もしかして、、、」と思って、古いヴァージョン
「ab313.exe」を持ってきて試してみたところ、同じコードであっさり
動きました。をを、なんてこったい!!

・・・と言うことで、どうやら、AB3とAB4では違うんでしょうか。

とりいそぎ、AB4でテキストファイルを読み込み、中身をStringの変数に
入れる方法を知りたいと考えています。

ポインタだけでもご教示頂ければ幸いです。よろしくお願いします。
7
記事: 473
登録日時: 2005年5月31日(火) 18:51
お住まい: 新潟県
連絡する:

Re: AB4でTextEditorのファイル読み込みでつまずきました。

#2 投稿記事 by 7 »

> 「ab424.zip」を使って試していたのですが、テキストファイルの
> 読み込みが出来ず、いくらやっても何も出てこない状態でした。
> Webからコピー&ペイスト
> してみたのですが、やっぱり駄目でした。
サンプルプロジェクトの「TextEditor」ってのを参考にするといいですよ。

> 「ab313.exe」を持ってきて試してみたところ、同じコードであっさり
> 動きました。をを、なんてこったい!!
>
> ・・・と言うことで、どうやら、AB3とAB4では違うんでしょうか。
どこが違うかはよく分からないんですけど、ActiveBasicはヴァージョンが変わる度に大した下位互換がなく過去の遺産(ソース)が無駄になるから使いたくない、という人もいるようです。

> とりいそぎ、AB4でテキストファイルを読み込み、中身をStringの変数に
> 入れる方法を知りたいと考えています。
サンプルプロジェクト「TextEditor」の読み込み部分を改造しました。 追記。
> ポインタだけでもご教示頂ければ幸いです。よろしくお願いします。
「ポイント」じゃなくて「ポインタ」でしたかっ。ポイントだけでも教えてくれればかと思ってました。
とりあえずポインタを使ってファイルを読み込むのでしたら「TextEditor」のファイル読み込みを参考にしてみてください。
BytePtr型の操作が気になるのであればまた質問してください。
のっぽ
記事: 2
登録日時: 2006年5月06日(土) 23:03

Re: AB4でTextEditorのファイル読み込みでつまずきました。

#3 投稿記事 by のっぽ »

ありがとうございます。無事読み込めるようになりました。

>サンプルプロジェクトの「TextEditor」ってのを参考にするといいですよ。
ひぃ、サンプルがあるのに気づいてませんでした。
お恥ずかしい。。。
Webのコードだとコンパイルすると警告だらけで不思議だったのですが、
サンプルでは警告0(いや、まぁ、当然なんでしょうけど。。。)でした。
ヴァージョン違いで色々あるって事なんですね。覚えておきます。

で、色々弄ってみたのですが、Webにあったコードと最小の差分だと

コード: 全て選択

    ReadFile(hFile,buffer,dwFileSize,VarPtr(dwAccessByte),ByVal 0)

コード: 全て選択

    ReadFile(hFile,StrPtr(buffer),dwFileSize,VarPtr(dwAccessByte),ByVal 0)
にしただけで、結果は同じになったように見えました。

ちょっと「StrPtr」とか、そこいら変について調べてみるのも
そうなんですが、まずはAB4用のサンプルで出直してみます。


>「ポイント」じゃなくて「ポインタ」でしたかっ。ポイントだけでも教えてくれればかと思ってました。
あ、いや、たとえばどっかのサイトにヒントがあるのであれば、
そのURLだけでも結構ですって感じで「ポインタ」って言葉を使いました。


どうもありがとうございました。
返信する