【问题标题】:Win32 ShellExecute and a UNC PathWin32 ShellExecute 和 UNC 路径
【发布时间】:2010-09-10 09:33:49
【问题描述】:

我想在 Powerpoint 2007 中启动一个 Flash 演示文稿。我正在调用 Win32 ShellExecute() 例程。当我从路径为 UNC 路径 (\myserver\myfolder\sample.ppt) 的位置运行它时,它不起作用。

ShellExecute 例程需要 6 个参数,其中之一是运行它的路径。我尝试将此参数设置为 C:\ 以及使用 ActivePresentation.Path (这是一个 UNC 路径)。两者都不起作用。

【问题讨论】:

  • 您能否将 ShellExecute() 函数调用显示为您现在如何使用它?

标签: vba flash powerpoint


【解决方案1】:

我最初尝试了这种方法,但发现它会导致问题:

  • 在未连接到网络的笔记本电脑上使用演示文稿时。
  • 如果用户无权访问 UNC。
  • 如果 Flash 文件被重命名、移动或删除。

我发现更好的方法是将文件嵌入到 Powerpoint 文件中。

使用Office XP、Powerpoint可以如下完成

'查看'菜单中选择'工具栏'并勾选'控制工具箱'

“控件工具箱”工具栏上点击“更多控件”图标

将显示控件列表。向下滚动直到找到'Shockwave Flash Object',然后点击它。

这应该会将您的光标更改为十字准线。移动到幻灯片上要插入 'Shockwave Flash Object' 的区域。 左键单击,按住并拖动以创建所需大小的框。

接下来右键单击刚刚插入的控件并选择'Properties'

设置以下属性

* Autoload = True
* EmbedMovie = True
* Enabled = True
* Loop = True
* Playing = True
* Visible = True
* Movie = c:\flash.swf (Change this to the location of your .swf file)

关闭“属性”控件

保存文件。

关闭文件。

重新打开文件。

当您在幻灯片放映期间到达幻灯片时,.swf 文件应该会自动开始播放。

我发现在 .swf 文件中包含控件(暂停/播放、时间线)很有用

【讨论】:

  • 几年前我尝试过这样的事情。我发现 PowerPoint 和 Flash 之间的交互存在一些问题。有时闪光灯只是无法播放。有时会。这是我无法始终如一地重现它的那种错误。也许它现在可以工作了。
【解决方案2】:

UNC 路径以 反斜杠开头。您是这样做的,还是只是问题中的一个错字?

【讨论】:

    【解决方案3】:

    我已将驱动器映射到 UNC 路径。

    命令行看起来像

    subst A:“\\ServerName\SomeDirectory”

    【讨论】:

    • 这似乎是一个合理的解决方法。我唯一担心的是,我认为某些系统用户不允许映射网络驱动器。不过,我要检查一下,它似乎应该可以工作。
    【解决方案4】:

    好吧,现在它似乎与 unc 路径一起工作得很好。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-09-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-10-15
      相关资源
      最近更新 更多