W waiwai Unregistered / Unconfirmed GUEST, unregistred user! 2000-02-21 #1 如果设置了关联的文件在打开时注册表中又没有"%1",怎样才能正确获取长文件路径呢?
W waiwai Unregistered / Unconfirmed GUEST, unregistred user! 2000-02-21 #4 用 if (ParamCount > 0) and FileExists(ParamStr(1)) then FileOpenClick(ParamStr(1)) 的方法不能识别长文件名,有没有别的方法?
用 if (ParamCount > 0) and FileExists(ParamStr(1)) then FileOpenClick(ParamStr(1)) 的方法不能识别长文件名,有没有别的方法?
B beta Unregistered / Unconfirmed GUEST, unregistred user! 2000-02-22 #5 注册表中一定要有"%1",而且引号是必须的(支持文件名中的空格). 要不然,试一试依次分析ParamStr(1),ParamStr(2),ParamStr(3)...
W waiwai Unregistered / Unconfirmed GUEST, unregistred user! 2000-02-22 #7 如果有"%1"可以,要是没有呢,我见有的程序没有也可以打开,而且不管文件名中有多少空格
W waiwai Unregistered / Unconfirmed GUEST, unregistred user! 2000-02-22 #8 比如文本文件,Windows自带的NotePad在没有"%1"的情况下也可以顺利打开
C cAkk Unregistered / Unconfirmed GUEST, unregistred user! 2000-02-23 #10 >>Windows自带的NotePad在没有"%1"的情况下也可以顺利打开 何以见得呢? 好像不是的.
C cAkk Unregistered / Unconfirmed GUEST, unregistred user! 2000-02-23 #12 抱歉,我前面没看清题目. 的确,没有"%1"也可以,反正默认是"%1". 不过你在delphi程序里面读取命令行参数的时候,不要用paramstr,而应该用 CmdLine这个系统变量. 比如: 用abc.exe打开"111 111 111.txt",CmdLine的值为: "abc.exe 111 111 111.txt" 注意他包括exe文件本身
抱歉,我前面没看清题目. 的确,没有"%1"也可以,反正默认是"%1". 不过你在delphi程序里面读取命令行参数的时候,不要用paramstr,而应该用 CmdLine这个系统变量. 比如: 用abc.exe打开"111 111 111.txt",CmdLine的值为: "abc.exe 111 111 111.txt" 注意他包括exe文件本身