重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

【GOLF me!】初月無料お試し

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

A 回答 (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の定義や面倒なキー指定をしなくて良いという利点があります。
イベントなので、記録は累積されます。クエリは日時の降順になって
います。「一つ前の設定値」なんてのも取り出せます。
    • good
    • 0
この回答へのお礼

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

お礼日時:2009/01/16 17:37

失礼しました。


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

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

お礼日時:2009/01/14 16:50

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

    • good
    • 0
この回答へのお礼

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

お礼日時:2009/01/14 16:47

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

    • good
    • 0
この回答へのお礼

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

お礼日時:2009/01/14 14:50

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!