I iseek Unregistered / Unconfirmed GUEST, unregistred user! 2007-06-02 #1 一般是在窗口Create时处理传入的参数. 但问题是,现在程序已经打开,双击关联文件时,程序有反映,但不知该如何获取传入的信息.
娃 娃娃 Unregistered / Unconfirmed GUEST, unregistred user! 2007-06-02 #2 要分两个方面处理: 1、在注册表中设置关联扩展名的打开方式 具体可以参照其它文件格式的注册表格式,比如 c:/XXXX.EXE %1 主要是后面这个%1,这个对于Delphi程序来说就是一个动态的传入参数,其实就是包含全路径的一个文件名。 2、在delphi程序中处理时更简单 直接取“ParamStr(1)”的值就是第一个参数,然后你想怎么处理就怎么处理了。
要分两个方面处理: 1、在注册表中设置关联扩展名的打开方式 具体可以参照其它文件格式的注册表格式,比如 c:/XXXX.EXE %1 主要是后面这个%1,这个对于Delphi程序来说就是一个动态的传入参数,其实就是包含全路径的一个文件名。 2、在delphi程序中处理时更简单 直接取“ParamStr(1)”的值就是第一个参数,然后你想怎么处理就怎么处理了。
I iseek Unregistered / Unconfirmed GUEST, unregistred user! 2007-06-02 #3 to 娃娃 你说的我知道. 我的意思是:程序已经打开,现在再双击关联文件. 此时程序如何处理
T tbytby Unregistered / Unconfirmed GUEST, unregistred user! 2007-06-02 #4 我估计可以定义两个消息。一个用来检测是否已经有程序个体在运行。如果确认有,新打开的程序(尚未显示界面)触发另一个消息,将参数传递给原程序。
I iseek Unregistered / Unconfirmed GUEST, unregistred user! 2007-06-02 #5 to tbytby 谢谢,这是个不错的思路,似乎值得一试. 不知道有没有更简捷的方法.
P ppaa Unregistered / Unconfirmed GUEST, unregistred user! 2007-06-02 #7 可以互斥检测,检测是否运行,如果确认有,第二个打开的程序将参数传递给第一个程序。