也就是必须要通过我的另外一个程序用shellexecute + 命令行方式才能打开

解决方案 »

  1.   

    好像不能直接实现,但可以变通,如:通过启动参数。因为一般直接运行的话不会加启动参数。检测ParamStr。
      

  2.   

    建议你的程序支持参数,在主窗体creat事件,加上下面代码即可支持参数if paramcount>0 then
        begin          if paramstr(1)<>'canrun' then // 表示第一个参数为指定值才可以继续
                begin
                  self.close;//退出
                end;    end;这样,你可以在外部程序里用shellexecute( 你的程序名.exe "canrun");就可以启动,而其他启动方式缺乏参数,都无法正常启动。希望以上信息能对你有帮助。欢迎大家访问http://www.boloo.com.cn,免费下载我写的游戏,呵呵