发新话题
打印

Delphi 命令行参数问题

Delphi 命令行参数问题

下面的代码用于取得系统当前正在打开的文件名,可为什么当文件放在桌面上或文件名中间有空格时,就只能取得文件上级目录名呢,而不是取得整个完整的文件名呢?
var
filename:string;
If system.ParamCount > 0 Then
  Begin
    filename := system.paramstr(1);
    showmessage(filename);
  End;

TOP

filename := system.paramstr(0);
是这样的吧。

TOP

错了,参数0返回是应用程序名称。

其实我的问题是:在用paramstr取得系统当前正打开的文件名时,如何处理空格,包括文件夹的空格和文件中的空格。

因为如果文件或文件夹中有空格的话,就会被当做参数截断。

所以,如何取得完整的文件路径并用自己的程序打开是一个难题。

用百度搜索了好多,全都不能解决问题。

有的只能处理文件名中含有的空格,有的只能处理文件夹中含有的空格。

嗨,再找找别的看看吧。

另,如果Winhack大哥看到些贴,麻烦你知道的话给说一下吧。

TOP

结贴,问题已自行解决。

本贴唯一参与者reika通过短消息收到到答案。

TOP

用一个win32api是吧

TOP

是的,win32api。

俺用的就是你,可惜发给reika的短消息中把你拉下了。

对不起,下次再发的话一定把你他捎带着发过去。

请原谅,好吗?

TOP

TOP

发新话题