• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 1100
  • Last Modified:

Embedded Objects - Byte streams

I have an embedded image on a form. How can I access the the content as a byte stream without explicitly extracting to disk first? I can pick up the attached object successfully and need a byte stream of that image-object. Code below my give an idea of what I am trying to do:

Dim s as new NotesSession
Dim stream As NotesStream
Dim object As NotesEmbeddedObject

Set stream = s.CreateStream
Set doc = ws.CurrentDocument.Document
If doc.HasEmbedded Then
      Set object = doc.GetAttachment( "myImage.jpg" )
      Call object.ExtractFile( <path> )  // Don't want to do this - besides, didn't work if run on "WebQuerySave" routine no idea why.
                        
        ...
//basically trying to end with a stream of bytes here of myImage.jpg
      If Not stream.Open(<path>) Then
            Messagebox stream.Bytes
      End If
            
End If
      
Thx Jay
0
jdembare
Asked:
jdembare
2 Solutions
 
HemanthaKumarCommented:
Jay, it is not possible. Stream works on physical file !!

~Hemanth
0
 
Bozzie4Commented:
It doesn't work in WebQuerySave because you need to allow 'Restricted Operations' on the agent itself, and to the agent signer.

cheers,

Tom
0
 
RanjeetRainCommented:
This is achievable if this is only for Web and if being designed for Internet Explorer.
0
Cloud Class® Course: Microsoft Azure 2017

Azure has a changed a lot since it was originally introduce by adding new services and features. Do you know everything you need to about Azure? This course will teach you about the Azure App Service, monitoring and application insights, DevOps, and Team Services.

 
Bozzie4Commented:
Well, Ranjeet, that's only correct if you want to extract to a local machine.

You can't extract the image/file to the local machine (the client) , but you can extract it to a path on the server (if you have appropriate rights in Notes ('restricted operations') and (for the user under which Domino runs) on the OS )

cheers,

Tom
0
 
jdembareAuthor Commented:
Thanks guys for the comments. Well, using both ~Hemanth and Tom I think I can manage a workaround.

But Tom, in your last comment, is this  the case when running off the server?  I have tested my code but running off local and it did extract it. Either way I think I get the gist just curious - actually will try it myself.

cheers
Jay
0
 
Bozzie4Commented:
Well, on local the restrictions of the server don't apply, naturally.  You can run all agents on local, normally - so you really should test your agents on a server.

You can extract images to the local drive if you run the agent locally, but if you have a web agent, you can't - the web agent can only save to a local folder.  You could give your server access to the fileserver your users use too, but I wouldn't do it...

The notesstream class is btw easier to use then the old ways (especially in manipulating text files, I 've found it way easier than the old Input ....)

cheers,

Tom
0
 
RanjeetRainCommented:
Tom, I had something else on my mind. Good thing, Jay has sorted it out.
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Get your problem seen by more experts

Be seen. Boost your question’s priority for more expert views and faster solutions

Tackle projects and never again get stuck behind a technical roadblock.
Join Now