如果你用OpenDialog组件打开一个文件,得到是全路径名 
  
但是在Win2000下这个全路径名是Windows扩展模式的 
也就是说,比如打开Abc.TXT得到路径是D:\Program Files\Microsoft Office\Office\ 
  
如何才能得到兼容DOS的路径格式呢?比如上述例子中Abc.TXT的DOS兼容路径应该是: 
D:\PROGRA~1\MICROS~2\Office\ 
  
这个问题主要出现在我的一个程序当中,主要是我采用创建进程CreateProcess办法来实现对Word的调用,语句如下 
  if CreateProcess(nil,PChar(CurDir), nil, nil, False, 
    NORMAL_PRIORITY_CLASS, nil, nil, StartupInfo, ProcessInfo)=FALSE then ... 
  
这里CurDir是命令行,定义为String类型,如: 
CurDir:='D:\Program Files\Microsoft Office\Office\winword.exe C:\Abc.Doc '
就可以执行通过。  但是如果后面的文档参数是Windows扩展路径格式的,那就会调用失败。
进程创建的时候不会报告错误信息,但是进入Word界面后,Word会报告文件打开失败
通过实现,我发现主要原因是ABC.DOC的路径里不能含有空格,如下面就会出错: 
D:\Program Files\Microsoft Office\Office\winword.exe C:\My Document\Abc.Doc 
因为在My  Document这个目录名中有1个空格请问这该如何解决呢?  
请问怎么解决?