OLE objects in Powerpoint

  • Thread starter Thread starter dragoon
  • Start date Start date
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!
 
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
 
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?
 
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.
 
Back
Top