I had replied to your other post on the same topic.
It is not possible for applications to create an ole object (AcDbOle2Frame/Ole2Frame object) in AutoCAD.
This is explained in the ObjectARX help file in the description for “setOleObject” method and I quote : “The COleClientItem class used by AutoCAD is a modified version of the class that ships from Microsoft. This means that it is not possible for applications to create their own COleClientItem objects for use by this function. This function can only be used with COleClientItem objects created by AutoCAD (that is, the object from another AcDbOle2Frame object).“
For this reason, the workaround could be to use a drawing file that contains the image as a template and using it in an insert operation.
If it is just an image in the drawing that you want to insert (not a Ole2Frame), you may find this blog post helpful :