我在windows xp上使用了以下命令,它的工作非常好。
rundll32.exe url.dll,FileProtocolHandler c:\test.pdf
但是同样的命令在Windows 2003服务器上完全没有做任何事情(确切地说,Windows 2003 R2,企业版,SP-2)。我的要求实际上是在我想要使用的oracle form6i中打开保存在本地磁盘上的pdf文件
HOST('cmd /c rundll32.exe url.dll, FileProtocolHandler "c:\test.pdf"');
命令,这不是正常工作。关键是,如果一个命令首先没有在dos shell上运行,那么它将如何从oracle表单运行。那么plz帮助我如何在Windows 2003上运行此命令?为什么同样的命令在xp上打开pdf完全正常但在2003年却没有?
感谢。
答案 0 :(得分:0)
调用cmd /c rundll32.exe url.dll, FileProtocolHandler "c:\test.pdf"
看起来像是在尝试使用系统的默认查看器显示pdf文件。
有一个命令执行此操作,至少自Windows 95以来它已经存在:start。只需运行start "c:\test.pdf"
,系统就会启动带有相关程序的文件。
来自help start
:
非可执行文件可以通过它们的文件关联来调用 通过键入文件的名称作为命令。 (例如,WORD.DOC会 启动与.DOC文件扩展名关联的应用程序。 有关如何创建这些命令,请参阅ASSOC和FTYPE命令 来自命令脚本的关联。