Win32 ShellExecute和UNC路径

时间:2020-03-05 19:00:02  来源:igfitidea点击:

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

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

解决方案

回答

UNC路径以双反斜杠开头。我们是在这样做,还是只是打字中的错字?

回答

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

命令行看起来像

替代A:" \ ServerName \ SomeDirectory"

回答

好吧,现在它似乎可以与unc路径一起正常工作。

回答

我最初尝试了这种方法,但是发现它引起了问题:

  • 从未连接到网络的笔记本电脑上使用演示文稿时。
  • 如果用户没有访问UNC的权限。
  • 如果闪存文件被重命名,移动或者删除。

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

可以使用Office XP,Powerpoint进行以下操作

从"查看"菜单中选择"工具栏",然后勾选"控制工具箱"

在"控件工具箱"工具栏上,单击"更多控件"图标

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

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

接下来,右键单击刚插入的控件,然后选择"属性"。

设置以下属性

* 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文件中包含控件(暂停/播放,时间线)很有用