每一次关联文件启动的是一个进程?还是打开一个窗体?

解决方案 »

  1.   

    启动的当然是一个进程了。你可以用ParamStr(1)获取启动参数,把参数传递给已经启动的程序~
      

  2.   

    用鼠标第一次双击关联文件启动一个进程,再用鼠标双击另一个关联文件,这时是打开了一个窗体?如果用鼠标双击一个word文件,就会打开word,会出现启动画面,再用鼠标双击一个word文件时,就不会出现启动画面了。
      

  3.   


    再用鼠标双击一个word文件时,再启动一个word进程,检查传入的参数,发现是一个文件,找一下有没有word启动,发现有,有把这个文件发送给已经启动的word,然后自己关闭。就是这么个流程!1.在delphi里检测程序启动时候的参数,可以用ParamStr(1)。
    2.检查自己写的程序是否已经启动,可以用FindWindow;
    3.Findwinow找到已经启动的程序后,可以用SendMessage把ParamStr(1)发给已经启动的程序,然后自己退出;
    4.已经启动的程序收到SendMessage消息以后,处理一下(比如打开该文件);回答完毕~