アドレス帳を作るためのプログラムを作っているのですが、
このプログラムによって生成されたファイルを起動(ダブルクリック)すると、
プログラムが起動し、ファイルがこのプログラムに格納
されるようにするにはどうすればよいのでしょうか。
このファイルの関連付けはアドレス帳のプログラムにするものと
します。
よろしくお願いします。

このQ&Aに関連する最新のQ&A

A 回答 (4件)

"Command"関数を使用すると起動時のコマンドラインの引数を取得できます。


プログラム開始直後に引数を取得してデータファイルが指定されているかを判別して、指定されていればデータファイルのOPENを行い、指定が無ければ通常の起動をするようにすればよろしのではないでしょうか。
関連付けに関してはNo.2の方の回答のとおりです。
    • good
    • 0
この回答へのお礼

お返事ありがとうございます。
COMMAND関数で解決できそうです。
MSDNのサンプルではちょっとわかりにくいのですが、
何とかなりそうなのでもう少しがんばってみます。

お礼日時:2001/04/27 14:28

関連付けをするなら以下のファイル(xxx.reg)を作って一度実行すれば登録す


ればファイルをクリックするだけで起動すると思います。
==========================xxx.reg====================================
REGEDIT4

[HKEY_CLASSES_ROOT\.xxx]
@="xxx_auto_file"

[HKEY_CLASSES_ROOT\xxx_auto_file]
@=""

[HKEY_CLASSES_ROOT\xxx_auto_file\shell\open]
@=""

[HKEY_CLASSES_ROOT\xxx_auto_file\shell\open\command]
@="C:\\[ディレクトリ名]\\[実行ファイル名].exe %1"
====================================================================
ここでは拡張しxxxになります。
    • good
    • 0
この回答へのお礼

お返事ありがとうございました。
レジストリエディタで手動で関連付けということでしょうか。
このアドレス帳を配布したいので手動というのはちょっとまずいのです。
申し訳ありません。

お礼日時:2001/04/27 14:24

ファイルの関連付けは自分で行なうのですね?



ファイルの関連付けを open のアクションに対して、

  アドレス帳のプログラム "%1"

と定義したのであれば、アドレス帳のファイルを仮に AAAA.adr と
すると、そのファイルをダブルクリックすることは、コマンドプロンプト
で、

  アドレス帳のプログラム "ファイルが存在するパス\AAAA.adr"

と起動されたことと等しいです。

プログラムからは、コマンドラインのオプションを取得(*)すれば、
そのファイル名が入っています。

  (*) 私は VB を使わないので、具体的な関数名を出せませんが、
    調べれば、すぐ分かりますよね?
    • good
    • 0
この回答へのお礼

お返事ありがとうございます。
ごめんなさい。
私はプログラムはVB以外したことが無いし、
この経験さえ1年ぐらいですのでぜんぜん理解できません。
パソコン用語集を調べてみたのですが、
わからず、実際に適当に入れてみても
変なエラーが出るし…
申し訳ありません。

お礼日時:2001/04/27 14:19

こんにちは、honiyonです。


  いまいちイメージがつかめないのですが、このプログラムを実行すると、
 アドレス帳のデータ(ファイル)を、自分自身のexeファイルに取り込むと
 いう事でしょうか?

  もしそうであれば、それは不可能です。 自分自身のファイルは、実行中
 に書き換える事は出来ません。

  解釈間違っていたらスイマセン(^^;

この回答への補足

早速のお返事ありがとうございました。
質問があいまいですいません。
たとえでいいますと、エクセルで作成したワークシート(.xls)を
実行するとエクセルが起動するというようなものです。

補足日時:2001/04/25 15:42
    • good
    • 0

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


人気Q&Aランキング