0

我在 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 表单中运行。那么请帮助我如何在 Windows 2003 上运行此命令?为什么相同的命令可以在 xp 上完美打开 pdf 而在 2003 上却不行?

谢谢。

4

1 回答 1

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 命令。

于 2012-05-24T06:16:28.450 回答