OLE objects in Powerpoint

D

dragoon

Hi everyone -

Is there a way to force PowerPoint show up embedded objects somewhere
(either in slides or in properties window)? I have a Powpoint 2003 file
that, if open it in Powerpoint, there is no OLE objects found, but if we
look into the COM objects, it shows there is an OLE objects. the code we
used to detect there is an OLE object is like this:

Dim ppt As PowerPoint.Application
// ...open powerpoint file...
Set PPTDoc = ppt.Presentations.Open(filename, True, True, False)

Dim s As PowerPoint.Shape
For Each s In PPTDoc.SlideMaster.Shapes
If s.Type = Office.MsoShapeType.msoEmbeddedOLEObject And s.Name =
"Base" Then
Debug.Print "hidden object found"
End If
Next

I have the impression that sometimes Powerpoint automatically keeps an old
copy of the original presentation. Is it true? If so, how can we show the
user that there IS an object (no matter what) embedded in it.

Thanks in advance!
 
S

Steve Rindsberg

Hi everyone -

Is there a way to force PowerPoint show up embedded objects somewhere
(either in slides or in properties window)? I have a Powpoint 2003 file
that, if open it in Powerpoint, there is no OLE objects found, but if we
look into the COM objects, it shows there is an OLE objects. the code we
used to detect there is an OLE object is like this:

Dim ppt As PowerPoint.Application
// ...open powerpoint file...
Set PPTDoc = ppt.Presentations.Open(filename, True, True, False)

Dim s As PowerPoint.Shape
For Each s In PPTDoc.SlideMaster.Shapes
If s.Type = Office.MsoShapeType.msoEmbeddedOLEObject And s.Name =
"Base" Then
Debug.Print "hidden object found"
End If
Next

I have the impression that sometimes Powerpoint automatically keeps an old
copy of the original presentation. Is it true?

Yes, when the presentation is under review. And sometimes PPT loses track of
the embedded object ... it's there but PPT doesn't see it as a "review" object,
or there may be multiple such objects, in which case they can't all be named
"Base"

Look for embedded OLE objects that are also invisible.
For any found, check the OLE.ProgId
I don't recall what it's supposed to be, but you should have an example file
you can check, no? IIRC, it's a PPT Show or Presentation.


If so, how can we show the
 
D

dragoon

Steve -

Thanks for your input. The programid, as you expected, is powerpoint. Is
there a way to force Powerpoint to show this object somehow, or indicate
that there is such an object?
 
S

Steve Rindsberg

Steve -

Thanks for your input. The programid, as you expected, is powerpoint. Is
there a way to force Powerpoint to show this object somehow, or indicate
that there is such an object?

Try setting its .Visible property to True
If that doesn't help, you could add a rectangle whose dimensions match those of
the object.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top