• 締切済み

VB6 実行ファイルにデータの保存

VB6を使用しています。 例えば、予めあるテキストボックスに任意の言葉を入れて 次回立ち上げたときにその言葉が表示されるようにしたいです。 恐らく、こういう事をしたい場合には、別ファイルにデータ保存して読み込む等になると思うのですが、 今回は実行ファイルのみで上記のような事をしたいです。 VB2005やNETとかではあるみたいですが、VB6ではないのでしょうか? わかる方よろしくお願いします。

  • koolm
  • お礼率80% (33/41)

みんなの回答

  • nda23
  • ベストアンサー率54% (777/1415)
回答No.4

方法としては以下の通りです。 (1)私物ファイル (2)レジストリ (3)アプリケーションログ (1)や(2)は既に回答も出ているかと思います。 (3)は本筋ではないんですが、安直な方法なので紹介します。 Const MY_EVENT As Long = 8 '★ 0,2,4,8,16 が使用可能 Sub イベント記録(ByVal 文字列) CreateObject("Wscript.Shell").LogEvent MY_EVENT, 文字列 End Sub Function イベント取得() As String Dim A, B Set A = CreateObject("WBemScripting.SWBemLocator"). _     ConnectServer(".").ExecQuery("SELECT * FROM " & _        "Win32_NTLogEvent WHERE LogFile='Application'" & _     " AND SourceName='WSH' And EventCode=" & CStr(MY_EVENT)) For Each B In A     イベント取得 = B.Message     Exit For Next End Function 書き込んだ内容はイベントビューアで参照できます。 イベントコード毎にアイコンが異なるので、お好みで選んでください。 本当はレジストリ(あるいはiniファイル)を使うべきだと思いますが、 APIの定義や面倒なキー指定をしなくて良いという利点があります。 イベントなので、記録は累積されます。クエリは日時の降順になって います。「一つ前の設定値」なんてのも取り出せます。

koolm
質問者

お礼

お礼遅くなってすみません。 アプリケーションログ少し勉強してみます。 ありがとうございます。

  • AKARI0418
  • ベストアンサー率67% (112/166)
回答No.3

失礼しました。 レジストリかファイルしかありませんね。 iniファイルかレジストリをお勧めします。 http://www.vbstation.net/sample/0217.htm を参考になさってみてください。

koolm
質問者

お礼

回答ありがとうございます。 レジストリですね。 ちょっと調べてみます。 でも、レジストリはやはり怖いです。 普通のテキストよりiniファイルの方が使いやすそうですね。 ありがとうございます。

  • wolf03
  • ベストアンサー率22% (241/1086)
回答No.2

普通にファイルを使いたくなければレジストリを使ってください。

koolm
質問者

お礼

回答ありがとうございます。 レジストリですね。 ちょっと調べてみます。 でも、レジストリは少し怖いですね。 ありがとうございます。

  • AKARI0418
  • ベストアンサー率67% (112/166)
回答No.1

変数をStatic宣言にしてみてください。

koolm
質問者

お礼

回答ありがとうございます。 Staticで宣言しても、実行ファイルを再起動(再読込ではなく)する際には、データは保持されていませんよね。 僕がしたいのは、実行ファイルを閉じて また、開いたときにそのデータが保持されているようにしたいです。 申し訳ありませんが、よろしくお願いいたします。

関連するQ&A

  • データの保存方法について

    VB.netについての質問です。 フォームにテキストボックスとコンボボックスとボタンが取り付けられている状態で、ボタンを押すとテキストボックスとコンボボックスのデータを、指定したフォルダにテキストファイルで保存させる、というプログラムは可能でしょうか? 保存形式はテキストファイル以外でも構いません。 よろしくお願いします。

  • 「名前をつけてファイルを保存」で保存する:VB.NET

    テキストボックスの内容をテキストファイルに書き込んで保存するプログラムを作っています。 1.指定した場所に指定したファイル名で保存する 2.「名前をつけて保存する」ダイアログを表示する 以上の2つについては分かったのですが、いわゆるメモ帳のようにメニューバーからファイル→名前をつけて保存ダイアログを開き、任意の場所にテキストボックスの内容を書き込んだテキストファイルを作成する方法が分かりません。 分かる方がいらっしゃいましたらご教授下さい。

  • VB2008で指定したURL先のテキストデータを取込

    Visual Basic2008にて、とあるコマンド処理を実行した際、別テキストボックスに表示されている指定したURL先のHTMLのテキストデータを取り込み、別テキストボックスに表示をさせたいのですが、VB2008の参考書等が見当たらない為、自力で調査ができません。 指定したURLからテキストファイルの取り込み処理をする関数、またはコーディングサンプル等をご教授いただけますでしょうか。 よろしくお願いいたします。

  • VB.NETでの韓国語のファイル入出力

    VB.NETでテキストボックスから入力した韓国語をテキストファイルに保存し,再度ファイルを読み込んで,フォーム上に表示するプログラムを作成しています。 テキストボックスに韓国語で入力するところまではできました。さらに同じフォーム上にあるテキストボックスやリストボックスにSTRING変数を介して表示させることもできます。 ただ,テキストファイルに書き出すと『???』が表示されてうまく書き出すことができません。ハングルをテキストファイルへ読み書きできるようにする方法がわかる方がいたら,ぜひご教授ください。 よろしくお願いします。 環境 Win2000 英語版 VB.NET FileOpen(),LineInput関数を使用中

  • VBで、テキストボックスを保存する方法

    VBで、テキストボックスを保存する方法 現在、VBでプログラムを書いていますが テキストボックスの中をテキスト形式で保存したいのです 保存したいのは、 textbox9です 現在、VBの(2010無料版をつかっています よろしくです

  • VB.NETにてエクセルファイルの保存方法

    VB.NET 2003を使っています。 以前の6.0の場合 ***.SaveAs(FileName:="C:\My Documents\ " & Tex1.Text & " .xls")とすると、テキストBOXの名前で保存が出来ましたが、.NETだとSaveAsが無いようです。どうすれば同じように出来るのでしょうか。

  • VB6.0でACCESSのコマンドを実行するには?

    教えてください。よろしくお願いします。 VB6.0のプログラムからACCESSに文字データを渡し、それをキーにしてACCESSのテーブルから該当するデータをACCESSのテキストボックスに表示させたいのですが、検索・表示のプログラムはACCESSで記述ずみですので、VBからは引数を渡して、ACCESS側のVBAのプログラムを実行させたいのです。 その際、ACCESSの引数を渡すMDBが起動していなかったら、起動させて、上記の処理をさせたいのですが。 分かりづらい文章で申し訳ありませんが、どなたかアドバイスをお願い致します。

  • ファイルの保存を行いたい

    Visual Basic 2010で、メールソフトで添付ファイルの保存・削除と同じような動きをするテキストボックス?を作りたいと考えてますがコードが思いつきません。 どなたか教えて頂けないでしょうか? 動作として (1)テキストボックスにドラッグ&ドロップで選択されたファイルを表示。 この時、テキストボックスに表示されているファイルを右クリックで表示から削除も行いたい (2)実行ボタンを押下で、テキストボックスに表示されているファイルを 日付(年月日と時刻)のファイル名でフォルダーを新規作成して保存したい。 宜しくお願いします。

  • VBでテキストに保存したいのですが。

    VBでプログラムを勉強してるのですが、リストボックスの内容をテキストに保存したいのです。しかし、保存した内容に””がついて保存されます。 ””がつかないように保存したいのですがどうしたらよいでしょうか教えていただきたいと思います。

  • VBからExcelに書き込む方法

    こんにちは。VB6.0(SP5),Excel2000,Win2000でVBの勉強をしています。 VBでコマンドボタンを押した時に、テキストボックスのデータを、Excelに書き込みたいと思っています。 特定のExcelに書き込むことは「GetObject」で出来たのですが、名前がわからない場合はどうしたらよいのでしょうか? ※ExcelはVBから起動したものではなく、人が任意のファイルを起動しています。Excelの名前はわかっていません(任意なので、何かわかりません) このような場合に、VBから書き込むのは可能なのでしょうか? よろしくお願いします。

専門家に質問してみよう