2010-09-22 37 views
2

我正在使用VSTO PowerPoint 2010加載項,該插件允許用戶使用Windows媒體播放器控件在Windows窗體中播放媒體對象(視頻或音頻)。PowerPoint以編程方式在加載項中打開/播放媒體對象

以何種方式可以提取嵌入式媒體對象並將其播放回用戶?

我有權訪問對象名稱,是否足以獲得嵌入對象?

+0

您是否檢查了此問題? http://stackoverflow.com/questions/3550417/programmatically-extract-embedded-file-from-powerpoint-presentation – Mathias 2010-09-24 15:32:46

回答

2

是的,沒有。

  • 「否」。通過VBA和VSTO,答案是否定的,或者至少我從來沒有見過它做過,也不知道。我已經看過這個,並沒有發現它是可能的。

  • 「有點兒是」。 2007/2010中的任何嵌入式媒體均可通過Open XML提取。這就是「kinda」的來源 - 只要你知道你正在提取什麼,你就可以提取它。聽起來很容易,但事實並非如此。插入視頻或音頻片段時,它會嵌入到形狀中。該形狀被命名爲[],這是音頻/視頻文件的文件名。因此,如果我插入Win7附帶的示例視頻,則保存視頻的形狀名稱爲「wildlife.wmv」。它可以很容易地被知道如何去做的最終用戶(客戶端中的選擇窗格)重新命名,並且在這種情況下,根據僅具有名稱就不可能找到。

    但是,如果尚未重命名,則可以在Open XML中打開您的.pptx的內存副本,搜索/ ppt/slides /文件夾中每個幻燈片的名稱,一旦找到,使用它的關係ID在/ ppt/media文件夾中找到它的名稱。然後,你可以拉出來,將它保存到硬盤,播放等

的PowerPoint,但是,重命名基於內部命名約定的文件。我的「wildlife.wmv」在包裝內更名爲「media1.wmv」。隨後的媒體項目將被命名爲media2.wmv,media1.mpg等。

+1

嗨,宅男你可能有一些示例代碼可以實現這一目標嗎? – alex 2010-10-11 22:54:04

相關問題