[リストへもどる]   [VBレスキュー(花ちゃん)]
一括表示

投稿時間:2005/07/25(Mon) 10:09
投稿者名:Five
Eメール:
URL :
タイトル:
リソースエディタにテキストファイルを追加
リソースエディタにテキストファイルを追加して
そのテキストファイルを
フォーム上のボタンをクリックしたら表示させる
というような事はできますでしょうか?

もし出来るのであれば、方法をヒントでもいいので教えてください。
よろしくお願いいたします。

投稿時間:2005/07/25(Mon) 10:29
投稿者名:いな
Eメール:
URL :
タイトル:
Re: リソースエディタにテキストファイルを追加
> リソースエディタにテキストファイルを追加して
> そのテキストファイルを
> フォーム上のボタンをクリックしたら表示させる
> というような事はできますでしょうか?
>
> もし出来るのであれば、方法をヒントでもいいので教えてください。
> よろしくお願いいたします。

ではヒント
「ファイル操作関係」をご覧ください。

投稿時間:2005/07/25(Mon) 10:52
投稿者名:Five
Eメール:
URL :
タイトル:
Re^2: リソースエディタにテキストファイルを追加
いな様、ありがとうございます。

> 「ファイル操作関係」をご覧ください。
上記を見てみたのですが、どこを参考にすればよいのかわかりませんでした。
もう少し詳しく教えて頂けると助かります。

よろしくお願いいたします。

投稿時間:2005/07/25(Mon) 11:19
投稿者名:いな
Eメール:
URL :
タイトル:
Re^3: リソースエディタにテキストファイルを追加
>・テキストファイルを(フォーム上のボタンをクリックしたら)表示させる
フォームのボタンをクリックしたら、
ファイルを読み込んで、表示すればいいんじゃないの?

テキストファイル(TXT・CSV)の読込・書込み

って論点はそこじゃないのかな?

投稿時間:2005/07/25(Mon) 11:48
投稿者名:Five
Eメール:
URL :
タイトル:
Re^4: リソースエディタにテキストファイルを追加
ありがとうございます。

> >・テキストファイルを(フォーム上のボタンをクリックしたら)表示させる
> フォームのボタンをクリックしたら、
> ファイルを読み込んで、表示すればいいんじゃないの?
>
> テキストファイル(TXT・CSV)の読込・書込み
>
> って論点はそこじゃないのかな?

いえ、Exeにテキストファイルを組み込み、
ボタンを押したらその組み込んだファイルを表示させるようにしたいのです。

そんな事は出来るのでしょうか?

投稿時間:2005/07/25(Mon) 11:56
投稿者名:いな
Eメール:
URL :
タイトル:
Re^5: リソースエディタにテキストファイルを追加
> ありがとうございます。
>
> > >・テキストファイルを(フォーム上のボタンをクリックしたら)表示させる
> > フォームのボタンをクリックしたら、
> > ファイルを読み込んで、表示すればいいんじゃないの?
> >
> > テキストファイル(TXT・CSV)の読込・書込み
> >
> > って論点はそこじゃないのかな?
>
> いえ、Exeにテキストファイルを組み込み、
> ボタンを押したらその組み込んだファイルを表示させるようにしたいのです。
>
> そんな事は出来るのでしょうか?

じゃ、
[テキストファイル(TXT・CSV)の読込・書込み]
hhttp://www.bcap.co.jp/hanafusa/VBHLP/txt01.htm
のサンプルを利用して、テキストファイルは読み込めるよね?

投稿時間:2005/07/25(Mon) 13:14
投稿者名:Five
Eメール:
URL :
タイトル:
Re^6: リソースエディタにテキストファイルを追加
> じゃ、
> [テキストファイル(TXT・CSV)の読込・書込み]
> hhttp://www.bcap.co.jp/hanafusa/VBHLP/txt01.htm
> のサンプルを利用して、テキストファイルは読み込めるよね?

説明不足のようですみません。

テキストファイルの読み書きではなく、
テキストファイル自体を(標準モジュールなどのように)VBに組み込んで
それを含めたものをコンパイルしExeを作成したいのです。

投稿時間:2005/07/25(Mon) 16:10
投稿者名:custom
Eメール:
URL :
タイトル:
Re^7: リソースエディタにテキストファイルを追加
> テキストファイル自体を(標準モジュールなどのように)VBに組み込んで
> それを含めたものをコンパイルしExeを作成したいのです。

カスタムリソースでテキストファイルを追加して
LoadResData関数で読めば可能と思いますが...

投稿時間:2005/07/25(Mon) 18:11
投稿者名:魔界の仮面弁士
Eメール:
URL :
タイトル:
Re^8: リソースエディタにテキストファイルを追加
> > テキストファイル自体を(標準モジュールなどのように)VBに組み込んで
> > それを含めたものをコンパイルしExeを作成したいのです。

もし、(resファイルではなく)テキストファイルの組み込みに拘っているのが、
たとえば「resだと編集しにくい」「変更を履歴として管理しにくい」といった、
開発上の運用レベル意味であれば、VB6付属の リソース アドインに頼らず、昔ながらの手法で、
自前で *.rc スクリプトから *.res をコンパイルしてから、exe化するような
開発運用にすれば、テキストファイルベースでの管理が可能かと。

# なお、RCファイルのサンプルは、SAMPLES\VB98\Atm\ATM.RC にあります。
# 各行の意味については、 SDK を参照してください。

> カスタムリソースでテキストファイルを追加して
> LoadResData関数で読めば可能と思いますが...

LoadResDataではなく、やはり、LoadResStringを使う必要があるかも。
hhttp://support.microsoft.com/kb/171731/

投稿時間:2005/07/25(Mon) 20:19
投稿者名:custom
Eメール:
URL :
タイトル:
Re^9: リソースエディタにテキストファイルを追加
> > カスタムリソースでテキストファイルを追加して
> > LoadResData関数で読めば可能と思いますが...
>
> LoadResDataではなく、やはり、LoadResStringを使う必要があるかも。
> hhttp://support.microsoft.com/kb/171731/

LoadResStrinが筋かもしれませんが、LoadResDataでも可能ということです。

投稿時間:2005/07/25(Mon) 21:54
投稿者名:魔界の仮面弁士
Eメール:
URL :
タイトル:
Re^10: リソースエディタにテキストファイルを追加
> > LoadResDataではなく、やはり、LoadResStringを使う必要があるかも。
> > hhttp://support.microsoft.com/kb/171731/
> LoadResStrinが筋かもしれませんが、LoadResDataでも可能ということです。

あ、すみません。これは私の勘違いのようです。m(_ _)m

実際に、VB4/32, および VB6で確認してみましたが、LoadResData(id, 10) や
LoadResData(id, "name") で、データの取得ができるみたいですね。失礼しました。


ストリングテーブルに対しては、LoadString(id) の代わりに、LoadResData(id, 6) でも
取得できるという点については認識していたのですが、
> > > カスタムリソースでテキストファイルを追加して
のようなカスタムリソース(ユーザー定義のリソース)の場合には、LoadResData を
使う事ができない思い込んでいたため、ストリングテーブルの方が良いかも、と書いてしまいました。

# 先のURL (Knowledge Base 171731) に書かれている
# 『ユーザー定義リソース (10) などのリソース フォーマットの取得〜実現されていません。』
# 「user-defined (10) resources are also not implemented in Visual Basic at this time.」
# という表現を、そのタイトルにある
# 『LoadResData 関数で実際にサポートしているフォーマット』
# 「LoadResData Function Does Not Support All Formats」
# という文章に重ねあわせて読んでしまい、ユーザー定義リソースの取得に関しては、
# LoadResData で扱う事ができない(or 使ってはいけない)という意味に誤解してました……(汗

投稿時間:2005/07/26(Tue) 13:11
投稿者名:Five
Eメール:
URL :
タイトル:
ありがとうございました。
カスタムリソースでテキストファイルを追加して出力・表示する処理を作成し
なんとか思い通りに動いたのでこれでいこうと思います。

皆様ありがとうございました。

Private Sub Btn_Text_Click()
  Dim StrFileName  As String
  Dim BytResData() As Byte
  Dim LngFileNo    As Long
  Dim LngRet       As Long
  
  On Error GoTo ERR_SUB
  
  LngFileNo = FreeFile()
  
  StrFileName = App.Path & "\Text.txt"
  
  BytResData = LoadResData(101, "CUSTOM")
  
  Open StrFileName For Binary Access Write As #LngFileNo
  Put #LngFileNo, , BytResData
  Close #LngFileNo
  
  Call Shell("Notepad " & StrFileName, vbNormalFocus)
End Sub

投稿時間:2005/07/25(Mon) 12:53
投稿者名:魔界の仮面弁士
Eメール:
URL :
タイトル:
Re: リソースエディタにテキストファイルを追加
> リソースエディタにテキストファイルを追加して
> そのテキストファイルを
> フォーム上のボタンをクリックしたら表示させる
> というような事はできますでしょうか?

リソース文字列の取得という意味であれば、LoadResString を使う事ができます。

投稿時間:2005/07/25(Mon) 13:19
投稿者名:Five
Eメール:
URL :
タイトル:
Re^2: リソースエディタにテキストファイルを追加
魔界の仮面弁士様、ありがとうございます。

> リソース文字列の取得という意味であれば、LoadResString を使う事ができます。
その方法ではなく、
テキストファイル自体を(標準モジュールなどのように)VBに組み込んで
コンパイルしExeを作成したいのです。

そんな事は出来ますでしょうか?

投稿時間:2005/07/25(Mon) 13:38
投稿者名:ガッ
Eメール:
URL :
タイトル:
Re^3: リソースエディタにテキストファイルを追加
> 魔界の仮面弁士様、ありがとうございます。
>
> > リソース文字列の取得という意味であれば、LoadResString を使う事ができます。
> その方法ではなく、
> テキストファイル自体を(標準モジュールなどのように)VBに組み込んで
> コンパイルしExeを作成したいのです。
>
> そんな事は出来ますでしょうか?
そういうのをリソースというのでは?(というか、リソースと言います)
別にリソースだからって、VB標準のリソースを使えというわけじゃないけど、
そうなると論点がずれるし貴方の質問が無いものねだりに聞こえてくるので、
ちょっと整理してみるといいかも。