Append an image to NIreport

Hi,
Is there any way to append an image file to an NIreport?
Report generation library doesn't provide a VI to do that and
I couldnt find anything about that in the NI site resources.
(I dont want to use print panel, because this is very slow for some
printers. )
thanks in advance.
Ozan ONER
ps: using Labview 5.1

Then, is it possible to order the new report generation toolkit separately
and would it be compatible with LV5.1?
"Stuart" wrote in message
news:[email protected]..
> Ozan
>
> I am pretty sure that you can't do that in 5.1, but I'm not 100%. I
> do know that it is very easy to do in LabVIEW 6i.

Similar Messages

  • Append Control Image to Report stops Source Distributi​on from working

    I have a top level built executeable that calls various external vi's using the "Call by Reference Node" function.  This seems to work ok, to a point.  An additional point here is this is code that I had running well in LV8.2 and am now trying to get running in LV2010 as there have been some significant changes in LV that have impacted on this project and this has forced me to change things.
    The external vi that is called is stored in a "Source Distribution" directory structure, which has been generated via its own project specifications.  An examination of the directories and vi's stored at the destination looks like everything should be there. 
    When it comes to running the vi in the source distribution directory (from the top level built executeable) I get the following error message "Error 1003 occurred at Open VI Reference in Run HTML Report Generation VI LV10.vi->Generate Reports.vi", with the additional suggestion " The VI is not executable. Most likely the VI is broken or one of its subVIs cannot be located. Select File>>Open to open the VI and then verify that you are able to run it.".  So it looks like there is something missing in the "Source Distribution" directories.
    Doing as suggested, opening the vi in the "Source Distribution" with the development environment, shows that it has no broken arrow.  My suspicion is the development environment is supplying whatever it is missing.
    Using the built top level application, using trial and error and using the diagram disable structure, I have narrowed down the location of the problem to an "Append Control Image to Report" sub vi (its from the NI Report menus).  Disabling this vi at the level it is called, allows the "Source Distribution" vi to run.  "Append Control Image to Report" is part of a class structure and I must say I have not used class structures so my understanding of their implications is very limited.
    If I instead dive into "Append Control Image to Report" vi and disable the vast majority of its diagram (everything in the "No Error" case), the original error pops up again.  Bit strange considering there are only controls and indicators and a case statement left.
    I would appreciate any suggestions, as this has got me stumped.  Hopefully I have made myself clear enough as it is all a bit complicated.  Let me know if I haven't.  Thanks.
    Herbert Niesler

        Hi Caleb,
          "When the VI displays the broken arrow and displays that error in the dialog, does it take you to a particular diagram component? Does the diagram have any broken arrows or something?"...      it doesn't take me to a particular diagram.  Is this possible in the RTE?  If it is how do I enable it?
       I can follow the chain of broken arrows (front panel only) down to my vi that calls the NIreport vi that is causing the problem.  However I am unable to open the NIreport vi's in the RTE, so cannot chase this any further down the call chain.
      I have tried opening the offending top level vi (on a network drive) and it opens ok.  When I close it, it wants to save some changes which i think might point at where the problem is.  The attached file shows the screen shots of the "Explain Changes" window.  Hopefully they mean something to you.
           Cheers
                    Herbert
    Herbert Niesler
    Attachments:
    Explain Changes.jpg ‏46 KB

  • Cluster not saved correctly in Append Control Image to Report VI

    [LV8 with Windows XP]
    I'm using the Append Control Image to Report VI to save the image of a control to Word (the same problem occurs if I save to Excel). This VI seems to work fine with all my controls except clusters. Not all of the contents of the cluster show up in the saved image. I have to expand the edges of the cluster way beyond the cluster contents in order for all the contents to show up in the saved image. Is this a bug? Is there a way to "realign" the contents of the cluster within the boundaries?
    George

    Hi,
    just had a customer with the problem with this cluster picture function and I wrote a little VI that manually gets the picture, resizes it to the cluster and the rest is up to you. The only thing is, that you have to place the "zero point" of the frontpanel in the upper left corner to get the proper image.
    For Users who want to upgrade: This issue is fixed with the next LabVIEW release.
    Best Regards,
     Andreas Pistek
    ~~~ Logic is a systematic method of coming to the wrong conclusion with confidence ~~~
    Attachments:
    better picture.vi ‏19 KB

  • I can't append control image to report on 1 page with appended text report

    I am attempting to create a report which is simply header, experiment information, and two graphs of data. I am using a Easy Text Report and Append Control Image to Report. I have successfully printed out this report, but on two separate pages. The header info is on the first page, and the graphs on the second page. This doesn't seem to be a margins problem, as the header is very brief and the graphs aren't that large either. I would like to make this into a one page report.  Any help is greatly appreciated.
    Message Edited by csmrunman on 01-15-2010 10:18 AM

    Nevermind. I neglected to see the Append Report Text.vi. That solved everything.

  • Append control image

    Hi,
    I Have a problem with the append control image to report VI. I Have a Array of clusters that contain 3 numeric indicators and 2 vertical pointer slides. When i try to append this iamge to a report, the picture thats appended downt contain the whole control, and has some weird artefacts. With other controls the append control image to report vi works fine.. Is this a bugin LV 8.0 or am i doing something wrong?
    Thnx
    Bart
    Labview CLD , Engineer/Manager
    Promedes and DSM
    using LV 7.1, 8.0, 8.2, 8.5 and 2009 SP1
    http://www.promedes.nl

    Ok here is an example, the cluster is being appended in the subvi
    Labview CLD , Engineer/Manager
    Promedes and DSM
    using LV 7.1, 8.0, 8.2, 8.5 and 2009 SP1
    http://www.promedes.nl
    Attachments:
    subvi.vi ‏35 KB
    problem.vi ‏14 KB

  • Append control image requires vi to be open

    Having a curious problem with the append control image vi in the report toolkit.
    I'm using LV8.6 with the current report toolkit .
    I have an application that merges the information from 4 sections into one html report.
    Using the append control image vi I add images to the report in two subvi.
    When the subvi are open on the desktop everything works fine.
    As soon as I minimise them to the toolbar or open them up so the image I am grabbing is not fully visible, I either miss the image entirely or only capture a portion of the image.
    Am I doing this wrong?
    Is there a workaround or better method to achieve this ?
    I am trying to avoid using  word or excell as these products may not be available on the target machine.
    henry

    Hi Henry,
    From what you are saying it sound very similar to KnowledgeBase 339HAFUW Append Control Image to Report Does Not Update the Correct Value of my Hidden....
    I made a subVI that writes to an indicator and then in the main VI I use that indictor’s reference as the input to the Append Image VI. I write to an HTML report and the image appears fine for me. During this time I never the subVI opened.  However, if I open the subVI and then minimize it I notice that blanks images are outputted to the HTML file.
    I will be investigating this behaviour a some more.
    I have attached my VI for reference.
    Message Edited by DiscoBall on 05-01-2009 03:21 PM
    Message Edited by DiscoBall on 05-01-2009 03:21 PM
    Joshua B.
    National Instruments
    NI Services
    NI Support Resources
    NI Training Resources
    Attachments:
    cvilv.vi ‏12 KB
    time.vi ‏6 KB

  • Bug in Append Control Image to Report in 8.5?

    I am now at an end with this.  I seem to have some sort of problem when using the Append Control Image to Report.  I have a program that creates two reports.  One is a condensed version, the other detailed.  Both reports contain JPG images of some front panel displays.  For the most part it seems to work except what ever it is doing appears very unstable.  The problem seems to center around me trying to include a Multicoulmn Listbox.  I create a Reference of it and then run that to my Append Control Image, just like any other image I want to include.  If I probe the Reference, it appears to be correct, i.e. the name, etc. all seem right.  However, what the image that gets included is a whole different graphic.   Some times I will get the listbox, other times nothing at all.  If I look in the directory and bring up the images, indeed, if it prints the wrong graphics, it also has created two of the ne that it includes. 
    Running the same program unmodifed seems to do the same thing, i.e. it always will print the wrong graphic.  As I have tried different things to try and skirt the problem, I get different effects.  
    I have seen the same problem with other graphics as well, not just the listbox, but I can't come up with any hint as to why it does what it does. 
    Attachments:
    LABVIEW_err.jpg ‏18 KB

    I have dug into this a little further and it appears this bug has to do with creating two reports at the same time. If I only generate a single report, everything works flawless.
    I placed the sections of the code that append data to the reports into a sequence so they would not happen at the same time. This seemed to have some effect, but the reports were still incorrect.
    Is LabView just not able to create two reports within a single progeam?
    I can work around this by creating just the detailed report for now, but it would sure be nice if there were a way to make it work.

  • Appending two images together

    Hi all,
    I'm trying to get a vertical scrolling images going. Basically, what im trying to achieve is similar to those reels you see in slot machines.
    Say, I have 45 images and I wish to align them all in one big "ribbon" and only showing at max 3 images at a time.
    This ribbon will be scrolling from top to bottom. Please refer to the explanation below..
    ------top of the screen-----
    | 1st |
    |------|
    | 2nd|
    ____|
    | |
    |3rd |
    ||___|
    -------- bottom of the screen----
    the rest of the images are loaded offscreen. So as soon as 1st image rolls down, the bottom part of the last image is drawn on to the screen.
    So far, i've been able to draw an image and managed to scroll it down the screen. However, I could not append the 2nd image below it. They overlapped each other.
    Here is my code. Please give an insight. thanks
    public class DrawPanel extends JPanel implements Runnable{
    private int PWIDTH = 200;
    private int PHEIGHT= 600;
    //for animation
    private Thread animator;
    private volatile boolean running = false ;
    private volatile boolean terminate = false;
    //for rendering
    private Graphics bufferGrp;
    private Image bufferImg = null;
    //game elements
    private Symbol []reel;
    private int num_symbols;
    /** Creates a new instance of DrawPanel */
    public DrawPanel() {
    setBackground(Color.BLACK);
    setPreferredSize(new Dimension(PWIDTH,PHEIGHT));
    //create game components here
    //creating Symbol.. modified here.. one symbol only for now..
    num_symbols= 2;
    reel = new Symbol[num_symbols];
    Image pA= getToolkit().getImage("Image/Pic-a.jpg");
    Image sc= getToolkit().getImage("Image/Scat-A.jpg");
    int slen = 200;
    if ( (pA == null) || (sc == null) )
    System.out.println("Cant create image");
    System.exit(0);
    reel[0]= new Symbol(0,0,pA,this,PWIDTH,PHEIGHT);
    reel[1]= new Symbol(0,0,sc,this,PWIDTH,PHEIGHT);
    for(int i=1;i<reel.length;i++){
    if ((i/2)==1)
    reel=new Symbol(0,i*slen,pA,this,PWIDTH,PHEIGHT);
    else
    reel[i]=new Symbol(0,i*slen,sc,this,PWIDTH,PHEIGHT);
    public DrawPanel(int w,int h)
    PWIDTH = w;
    PHEIGHT= h;
    setBackground(Color.BLACK);
    setPreferredSize(new Dimension(PWIDTH,PHEIGHT));
    //create game components here
    num_symbols= 1;
    reel = new Symbol[num_symbols];
    Image pA= getToolkit().getImage("Image/Pic-a.jpg");
    Image sc= getToolkit().getImage("Image/Scat-A.jpg");
    int slen = 200;
    if ( (pA == null) || (sc == null) )
    System.out.println("Cant create image");
    System.exit(0);
    reel[0]= new Symbol(0,0,pA,this,PWIDTH,PHEIGHT);
    // reel[1]= new Symbol(0,200,sc,this,PWIDTH,PHEIGHT);
    public void addNotify()
    super.addNotify();
    startAnimation();
    private void startAnimation()
    //initialise and start the thread..
    if (animator == null || ! running)
    animator = new Thread(this);
    animator.start();
    public void stopAnimation()
    running=false;
    // for fps..
    // private final static int fps = 1000/40; // 40 fps..
    public void run()
    //repeatedly update, render and sleep
    // long startTime,elapsedTime, delayTime;
    // startTime= System.currentTimeMillis();
    running = true;
    int roll= 0;
    while(running)
    panelUpdate(roll);
    panelRender();
    paintScreen();
    if(roll<=PHEIGHT)
    roll+=5;
    else
    roll=0;
    // elapsedTime=System.currentTimeMillis();
    // delayTime= fps - elapsedTime;
    // if(delayTime <= 0) //update took longer than fps
    // delayTime = 5; //delay anyway
    try {
    Thread.sleep(20); // sleep for 20ms
    }catch(InterruptedException e){}
    // startTime=System.currentTimeMillis();
    System.exit(0);
    private void panelUpdate(int y)
    if(!terminate)
    //update the panel state..
    //or update the game elements
    //Roll the logo..
    for(int i=0;i<reel.length;i++)
    reel[i].setPosition(0,y);
    reel[i].updatePosition();
    private void panelRender()
    //draw the current frame to an image buffer..
    //Double buffer rendering..
    if(bufferImg == null)
    bufferImg = createImage(PWIDTH,PHEIGHT);
    if(bufferImg == null)
    System.out.println("Failed to create image buffer");
    System.exit(0);
    else
    bufferGrp= bufferImg.getGraphics();
    //clear the background..
    bufferGrp.setColor(Color.BLUE);
    bufferGrp.fillRect(0,0,PWIDTH,PHEIGHT);
    //draw game element
    //modified here
    for(int i=0;i<reel.length;i++)
    reel[i].draw(bufferGrp);
    if(terminate)
    terminationMsg(bufferGrp);
    private void terminationMsg(Graphics g)
    public void paintComponent(Graphics g)
    //called only after the rendering step has been completed...
    super.paintComponent(g);
    if(bufferImg != null)
    Graphics2D g2d = (Graphics2D)g;
    g2d.drawImage(bufferImg,0,0,null);
    private void paintScreen()
    Graphics g;
    try
    g=this.getGraphics(); // get the panel's graphic content..
    if((g!=null) && (bufferImg!=null))
    Graphics2D g2d = (Graphics2D) g;
    g2d.drawImage(bufferImg,0,0,null);
    Toolkit.getDefaultToolkit().sync();
    g2d.dispose();
    }catch(Exception e){ System.out.println("Graphics context error"+ e) ; }

    import java.awt.*;
    import java.awt.event.*;
    import java.awt.image.BufferedImage;
    import java.io.*;
    import javax.imageio.ImageIO;
    import javax.swing.*;
    public class DP extends JPanel implements Runnable{
        private int PWIDTH = 300;
        private int PHEIGHT= 200;
        //for animation
        private Thread animator;
        private volatile boolean running = false;
        //for rendering
        private BufferedImage imageStrip;
        Rectangle clip;
        int pos;
        int deltaY = 1;
        boolean showClip = false;
        public DP(BufferedImage[] images) {
            setBackground(Color.BLACK);
            setPreferredSize(new Dimension(PWIDTH,PHEIGHT));
            imageStrip = createStrip(images);
            clip = new Rectangle(imageStrip.getWidth()+1, 90);
            pos = -imageStrip.getHeight() + clip.height;
            addMouseListener(ml);
        public void addNotify(){
            super.addNotify();
            startAnimation();
        private void startAnimation(){
            //initialise and start the thread..
            if (animator == null || ! running){
                animator = new Thread(this);
                animator.setPriority(Thread.NORM_PRIORITY);
                animator.start();
        public void stopAnimation(){
            running=false;
            if(animator != null)
                animator.interrupt();
            animator = null;
        public void run(){
            running = true;
            while(running){
                pos += deltaY;
                if(pos > 0)
                    pos -= imageStrip.getHeight();
                repaint();
                try {
                    Thread.sleep(100);
                }catch(InterruptedException e){
                    stopAnimation();
        protected void paintComponent(Graphics g){
            super.paintComponent(g);
            int w = getWidth();
            int h = getHeight();
            int x = (w - clip.width)/2;
            int y = (h - clip.height)/2;
            clip.setLocation(x-1, y-1);
            Shape origClip = g.getClip();
            if(!showClip)
                g.setClip(clip);
            g.drawImage(imageStrip, x, y+pos, this);
            if(pos + imageStrip.getHeight() < clip.height) {
                int dy = pos + imageStrip.getHeight();
                g.drawImage(imageStrip, x, y+dy, this);
            if(showClip) {
                g.setColor(Color.red);
                ((Graphics2D)g).draw(clip);
            } else {
                g.setClip(origClip);
        private BufferedImage createStrip(BufferedImage[] images) {
            // Assume all images are same size and type.
            int w = images[0].getWidth();
            int h = images[0].getHeight()*images.length;
            BufferedImage image = new BufferedImage(w, h, images[0].getType());
            Graphics2D g2 = image.createGraphics();
            for(int j = 0; j < images.length; j++) {
                int y = j * images[0].getHeight();
                g2.drawImage(images[j], 0, y, this);
            g2.dispose();
            //JOptionPane.showMessageDialog(this, new ImageIcon(image), "", -1);
            return image;
        public static void main(String[] args) throws IOException {
            String prefix = "images/geek/geek";
            String[] ids = {
                "-c---", "--g--", "---h-", "----t", "-cght"
            BufferedImage[] images = new BufferedImage[ids.length];
            for(int j = 0; j < images.length; j++) {
                String path = prefix + ids[j] + ".gif";
                images[j] = ImageIO.read(new File(path));
            DP test = new DP(images);
            JFrame f = new JFrame("click");
            f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            f.getContentPane().add(test);
            f.pack();
            f.setLocation(200,200);
            f.setVisible(true);
        private MouseListener ml = new MouseAdapter() {
            public void mousePressed(MouseEvent e) {
                showClip = !showClip;
    }geek image files:
    http://java.sun.com/docs/books/tutorial/uiswing/examples/components/index.html

  • Appending data(Image and Text) to a file written with RTFWriter2.

    I have file witten using RTFWriter2 which contains image and text.I nedd to modify the contents of that file at runtime through browsing and selecting the JFileChooser and append the data to existing selected file.
    I write inot the file for the first time using FileOutputStream("filename",ture)
    where true stands for appending data to current file,if does noes have any/not.
    But this does not work when i write the file using RTFWriter2,and i have to use this RTFWriter2 b'coz writing an image to a file is not done by any other way.
    If there is any do let me know and if not then what is the solution to this problem of appending data to existing file written by RTFWriter2.
    Your repkeis will be appreciated.Thank You.

    Mubin_Ahmed wrote:
    Hi,
    I want to write an application which can be used to read a file that contains both images and text.
    It must separate the images and text and write them in separate files..
    Can anyone help me with this please...
    My email id is [email protected]
    Thanks in advance...This forum is to use as a resource for your questions, not a place to enlist someone to program for you. If you have specific questions on what to do, not: "I've not a clue, so explain the wold to me." But specific questions on how to get your code to work or points about Java, then people from all over the world will be happy to help you in the context of the forum, and not through your private e-mail. E-mail defeats the basic purpose of having public forums for learning and exchange of information.

  • Appending the image with Data inn table cloumn

    Hi All
    I have one table with 5 columns .My requirement is to attach one image with the data of one column based on the value.
    For Example For vaue WIP Red Image,ApprovedGreen Image,Failed ------- No Image
    The image should be appended to the satus.
    I have seen this feature in couple of Standard OA Pages But not able to find the way.
    Pls help me

    You mean, you want to show both an image and the text in the same column? It is not a standard practice and against BLAF. My suggestion will be to either use 2 separate columns or probably the text written in the image if your text list is fixed.
    --Shiv                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               

  • Standard Report - Append Control Image Width Problem / Limitation or Bug?

    I am trying to create a Standard Report and am having a hard time placing a XY Graph control on the report. My problem is I want to use the maximum page area to view the graph. For this reason, I am keeping the margins small and increasing the size of the control so that it occupies almost all of the page. What I find is that after a certain limit, the XY graph image output on the report does not increase in size even if you increase the control size. In fact the image will get worse with larger size once beyond the limit. No matter How I try, the Image will not occupy all the area between the Horizontal Margins.
    Either this is a bug or undocumented limitation.
    Ahh.. One other possibility exists, that I am not smart enough. But if some one can help me here, It will be greatly appreciated.
    I am Using LV 8.2 on XP machine.
    I am attaching the VI and two PDF files, In "MyReport w1000.pdf" The XY Graph is 1000 Pixels Wide. In "MyReport w2000.pdf" I made it 2000 Pixels wide, however the size of the image did not increase on the report. Also You can notice the difference in quality between the two reports.
    To use my vi just size the graph to different sizes and run it, It will output to the default Printer. If you have a PDF writer set as default printer, It will save it to file.
    If anyone can help, I thank you and wish you...
    Good Luck!
    Mache

    I do not like Vivek's workaround. "Use HTML report"  is not acceptable when the question is about Standard report. People may want to use Standard report and there is a reason it is called standard.
    Anyway one solution is to size the image to most optimum size - as large as possible but retaining the graphical quality. This will still leave you with large white spaces around your graph object.
    Second solution that I am using is to Put the graph object and any other elements that I want on my report on a Front panel of a VI. Size the objects and front panel and objects appropriately and then use Print Panel to Printer method to Print the whole VI front panel. In my app. This VI which mimics the report is called from my app and is called Print Preview.  There is even a Vi that allows you to choose the printer. http://zone.ni.com/devzone/cda/epd/p/id/1327
    I am attaching a Sample Report and Code Snippet to look at.
    Good Luck!
    Mache
    Attachments:
    Labview Document.pdf ‏21 KB
    Print Code.jpg ‏30 KB

  • Print report and append control image to report.vi problem

    why print report.vi and control image to report.vi can't executable in xp service pack 3??
    before that, i use xp service pack 1. these sub vi can use successful. but after i transfer all ni file into xp service pack 3, that sub vi can't executable..why it happen???
    please, help me...

    When you said that you used your VIs in service pack 1 and then transferred to Service pack 3, are you referring to 2 different computers or you simply updated the computer with SP1 to SP3?
    If you are using 2 different computers, were all the software and the toolkit also installed in the pc with SP3? I am using XP with SP3 and I am not having any problems with the print vi.
    If you have more information, like if you get an error message, kindly post it here as well.
    Best regards,
    Mary Anne
    .....YOU WONT LEARN IF YOU ALREADY KNOW.....

  • Printed front panel graphics quality (Print Panel to Printer method vs. Append Front Panel Image to Report.vi)

    LV 6.02 (or 6.1)
    NT 4.0
    I have a vi that the front panel includes all the information I need to print except that it is on different pages of a tab control to conserve screen space. I was attempting to programatically cycle the value of the tab control in a For loop and invoke the Print Panel to Printer method to print 7 pages of the front panel, each with a different tab page selected. The printouts were excellent quality but beginning with the second consecutive Print Panel to Printer method the on screen front panel image of the VI being printed would become jumbled (sometimes, by the time 7 printings were done, the entire front panel image would disappe
    ar and a bitmap of the desktop or underlying windows would be visible in the VI's panel frame) yet the subsequent Print Panel to Printer methods continued to print the panel as they should appear. The visible front panel graphics would never return to normal and the only solution was to close the vi (in the dev system) or exe (compiled) and re-launch. I tried a lot of things (like hiding the panel to print before printing and showing it after printing) with no luck. It appears that two or more of these consecutive invoke methods caused the problem regardless of whether the tabs were cycling, or even if there was no tab control and much fewer controls on the panel to be printed than normal. I also had the same problem with LV 6.1.
    Finally, I was forced to switch to the report generation toolkit vi's, I cycle through the tab pages and use the Append Front Panel Image to Report.vi to append each image to the report. This is faster and control returns to my program quicker but I a
    m unhappy with the printed quality of the graphics of the front panels. They are not as high of resolution as those generated via the Print Panel to Printer method.
    Any suggestions?

    You might try changing the way the VI is printed by going to tools >> options >> printing. Try the postscript and bitmap settings.
    Jeremy

  • Report Generation & image

    Hello,
    I have been using Report Generation VIs to print Control/Indicator (Front Panel)icons on Word Document.  The only issue is that it is so white that it blends with the background (example attachment below). Any suggestions.
    Also, how can I use Report Generation VIs to print items (i.e. case structure and the items within it) from Block Diagram into Word Doc.
    Thanks.
    Attachments:
    DocumentPicture.doc ‏24 KB

    To answer your second question about inserting a Block Diagram image into your report, one way to do it would be to use a VI Invoke Node with the method Block Diagram >> Get Image Scaled to output Image Data for your Block Diagram (or whatever VI's Block Diagram you wire the VI refnum in for). Then use Draw Flattened Pixmap to change the Image Data format into a picture format that you can wire to a picture control. Then create a reference for this picture control and wire it into the Report Generation Toolkit VI called Append Control Image to Report. That will accomplish what you want.
    I'll attach an example below, but unfortunately I only have the Report Generation Toolkit installed for LabVIEW 8 right now. I'll also paste the image below so you can get an idea of what I'm doing.
    Message Edited by Jarrod S. on 04-14-2006 01:27 PM
    Jarrod S.
    National Instruments
    Attachments:
    ReportGenBD_Example.vi ‏20 KB
    Screenshot.JPG ‏57 KB

  • Embedded image in html body of the email is not appearing in Outlook mail box

    My application Basically gets the un delivered emails from the outlook account.Composes the email from information then also appends the signature of email.The signatures may be multiple , form will show these signatures as a dropdown usin webbrowser control there both image as well as links appear well.But the same if draft them to outlook drafts folder the image in the signature misses and shows image not available.II fetch the signature from user local signature folder , convert it base64 string and set the string as source for image element and append this body of the email.I basically use Outlook COM object to achieve thesepublic void AddImageContentToHtml(List<TamDetails> tamList,string html,string key)
    string htmlContent = html as string;
    string imageSource = string.Empty;
    HtmlNode signatureNode = null;
    HtmlNodeCollection nodeCollection = null;
    List<string> imagePaths = null;
    string requiredImage = string.Empty;
    string base64Image = string.Empty;
    if (!string.IsNullOrWhiteSpace(key))
    imagePaths = ImageDict[key];
    foreach (string strPath in imagePaths)
    //string appDataDir = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) + "\\Microsoft\\Signatures";
    requiredImage = strPath;
    string [] commonPath = { Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), "Microsoft", "Signatures")};
    string[] validPaths = requiredImage.Split(commonPath, StringSplitOptions.RemoveEmptyEntries);
    if (validPaths.Count() > 1)
    var path1 = commonPath[0];
    var path2 = validPaths[1];
    int index = path2.IndexOf('/');
    path2.Remove(index);
    requiredImage = path1 + path2;
    if (!string.IsNullOrEmpty(requiredImage))
    if (File.Exists(requiredImage))
    base64Image = CreateBase64Image(requiredImage);
    string fileExtension = Path.GetExtension(requiredImage);
    imageSource = "data:image/" + fileExtension.Remove(0, 1) + ";base64," + base64Image;
    if (!string.IsNullOrWhiteSpace(htmlContent))
    try
    HtmlDocument htmlDoc = new HtmlDocument();
    if (!string.IsNullOrEmpty(imageSource))
    htmlContent=htmlContent.Replace(requiredImage, imageSource);
    htmlDoc.LoadHtml(htmlContent);
    // HtmlNode node = new HtmlNode()
    signatureNode = (htmlDoc.DocumentNode.Descendants("body").FirstOrDefault());
    nodeCollection = signatureNode.ChildNodes;
    catch (Exception ex)
    AppLogException.LogError("Error in appending Signature Image", ex);
    if (tamList != null)
    tamList.ForEach(a =>
    //StringWriter sw = new StringWriter(new StringBuilder(a.MailItem.HTMLBody));
    HtmlDocument doc = new HtmlDocument();
    doc.LoadHtml(a.SourceEmail);
    var node = doc.DocumentNode.Descendants("div").FirstOrDefault();
    if(nodeCollection != null && node != null)
    foreach (var childNode in nodeCollection)
    node.AppendChild(childNode);
    a.MailItem.HTMLBody = doc.DocumentNode.OuterHtml;
    //using(HtmlTextWriter htmlWriter = new HtmlTextWriter(sw,a.MailItem.HTMLBody))
    // htmlWriter.RenderBeginTag(HtmlTextWriterTag.Div);
    // if(!string.IsNullOrWhiteSpace(signatureNode))
    // htmlWriter.
    // htmlWriter.RenderEndTag();
    }My mail html body is <html xmlns:v="urn:schemas-microsoft-com:vml"
    xmlns:o="urn:schemas-microsoft-com:office:office"
    xmlns:w="urn:schemas-microsoft-com:office:word"
    xmlns:m="http://schemas.microsoft.com/office/2004/12/omml"
    xmlns="http://www.w3.org/TR/REC-html40">
    <head>
    <meta http-equiv=Content-Type content="text/html; charset=windows-1252">
    <meta name=ProgId content=Word.Document>
    <meta name=Generator content="Microsoft Word 14">
    <meta name=Originator content="Microsoft Word 14">
    <link rel=File-List href="Sanjay%20S_files/filelist.xml">
    <link rel=Edit-Time-Data href="Sanjay%20S_files/editdata.mso">
    <!--[if !mso]>
    <style>
    v\:* {behavior:url(#default#VML);}
    o\:* {behavior:url(#default#VML);}
    w\:* {behavior:url(#default#VML);}
    .shape {behavior:url(#default#VML);}
    </style>
    <![endif]--><!--[if gte mso 9]><xml>
    <o:OfficeDocumentSettings>
    <o:AllowPNG/>
    </o:OfficeDocumentSettings>
    </xml><![endif]-->
    <link rel=themeData href="Sanjay%20S_files/themedata.thmx">
    <link rel=colorSchemeMapping href="Sanjay%20S_files/colorschememapping.xml">
    <!--[if gte mso 9]><xml>
    <w:WordDocument>
    <w:View>Normal</w:View>
    <w:Zoom>0</w:Zoom>
    <w:TrackMoves/>
    <w:TrackFormatting/>
    <w:PunctuationKerning/>
    <w:ValidateAgainstSchemas/>
    <w:SaveIfXMLInvalid>false</w:SaveIfXMLInvalid>
    <w:IgnoreMixedContent>false</w:IgnoreMixedContent>
    <w:AlwaysShowPlaceholderText>false</w:AlwaysShowPlaceholderText>
    <w:DoNotPromoteQF/>
    <w:LidThemeOther>EN-US</w:LidThemeOther>
    <w:LidThemeAsian>X-NONE</w:LidThemeAsian>
    <w:LidThemeComplexScript>X-NONE</w:LidThemeComplexScript>
    <w:DoNotShadeFormData/>
    <w:Compatibility>
    <w:BreakWrappedTables/>
    <w:SnapToGridInCell/>
    <w:WrapTextWithPunct/>
    <w:UseAsianBreakRules/>
    <w:DontGrowAutofit/>
    <w:SplitPgBreakAndParaMark/>
    <w:EnableOpenTypeKerning/>
    <w:DontFlipMirrorIndents/>
    <w:OverrideTableStyleHps/>
    <w:UseFELayout/>
    </w:Compatibility>
    <m:mathPr>
    <m:mathFont m:val="Cambria Math"/>
    <m:brkBin m:val="before"/>
    <m:brkBinSub m:val="&#45;-"/>
    <m:smallFrac m:val="off"/>
    <m:dispDef/>
    <m:lMargin m:val="0"/>
    <m:rMargin m:val="0"/>
    <m:defJc m:val="centerGroup"/>
    <m:wrapIndent m:val="1440"/>
    <m:intLim m:val="subSup"/>
    <m:naryLim m:val="undOvr"/>
    </m:mathPr></w:WordDocument>
    </xml><![endif]--><!--[if gte mso 9]><xml>
    <w:LatentStyles DefLockedState="false" DefUnhideWhenUsed="true"
    DefSemiHidden="true" DefQFormat="false" DefPriority="99"
    LatentStyleCount="267">
    <w:LsdException Locked="false" Priority="0" SemiHidden="false"
    UnhideWhenUsed="false" QFormat="true" Name="Normal"/>
    <w:LsdException Locked="false" Priority="9" SemiHidden="false"
    UnhideWhenUsed="false" QFormat="true" Name="heading 1"/>
    <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 2"/>
    <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 3"/>
    <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 4"/>
    <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 5"/>
    <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 6"/>
    <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 7"/>
    <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 8"/>
    <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 9"/>
    <w:LsdException Locked="false" Priority="39" Name="toc 1"/>
    <w:LsdException Locked="false" Priority="39" Name="toc 2"/>
    <w:LsdException Locked="false" Priority="39" Name="toc 3"/>
    <w:LsdException Locked="false" Priority="39" Name="toc 4"/>
    <w:LsdException Locked="false" Priority="39" Name="toc 5"/>
    <w:LsdException Locked="false" Priority="39" Name="toc 6"/>
    <w:LsdException Locked="false" Priority="39" Name="toc 7"/>
    <w:LsdException Locked="false" Priority="39" Name="toc 8"/>
    <w:LsdException Locked="false" Priority="39" Name="toc 9"/>
    <w:LsdException Locked="false" Priority="35" QFormat="true" Name="caption"/>
    <w:LsdException Locked="false" Priority="10" SemiHidden="false"
    UnhideWhenUsed="false" QFormat="true" Name="Title"/>
    <w:LsdException Locked="false" Priority="1" Name="Default Paragraph Font"/>
    <w:LsdException Locked="false" Priority="11" SemiHidden="false"
    UnhideWhenUsed="false" QFormat="true" Name="Subtitle"/>
    <w:LsdException Locked="false" Priority="22" SemiHidden="false"
    UnhideWhenUsed="false" QFormat="true" Name="Strong"/>
    <w:LsdException Locked="false" Priority="20" SemiHidden="false"
    UnhideWhenUsed="false" QFormat="true" Name="Emphasis"/>
    <w:LsdException Locked="false" Priority="59" SemiHidden="false"
    UnhideWhenUsed="false" Name="Table Grid"/>
    <w:LsdException Locked="false" UnhideWhenUsed="false" Name="Placeholder Text"/>
    <w:LsdException Locked="false" Priority="1" SemiHidden="false"
    UnhideWhenUsed="false" QFormat="true" Name="No Spacing"/>
    <w:LsdException Locked="false" Priority="60" SemiHidden="false"
    UnhideWhenUsed="false" Name="Light Shading"/>
    <w:LsdException Locked="false" Priority="61" SemiHidden="false"
    UnhideWhenUsed="false" Name="Light List"/>
    <w:LsdException Locked="false" Priority="62" SemiHidden="false"
    UnhideWhenUsed="false" Name="Light Grid"/>
    <w:LsdException Locked="false" Priority="63" SemiHidden="false"
    UnhideWhenUsed="false" Name="Medium Shading 1"/>
    <w:LsdException Locked="false" Priority="64" SemiHidden="false"
    UnhideWhenUsed="false" Name="Medium Shading 2"/>
    <w:LsdException Locked="false" Priority="65" SemiHidden="false"
    UnhideWhenUsed="false" Name="Medium List 1"/>
    <w:LsdException Locked="false" Priority="66" SemiHidden="false"
    UnhideWhenUsed="false" Name="Medium List 2"/>
    <w:LsdException Locked="false" Priority="67" SemiHidden="false"
    UnhideWhenUsed="false" Name="Medium Grid 1"/>
    <w:LsdException Locked="false" Priority="68" SemiHidden="false"
    UnhideWhenUsed="false" Name="Medium Grid 2"/>
    <w:LsdException Locked="false" Priority="69" SemiHidden="false"
    UnhideWhenUsed="false" Name="Medium Grid 3"/>
    <w:LsdException Locked="false" Priority="70" SemiHidden="false"
    UnhideWhenUsed="false" Name="Dark List"/>
    <w:LsdException Locked="false" Priority="71" SemiHidden="false"
    UnhideWhenUsed="false" Name="Colorful Shading"/>
    <w:LsdException Locked="false" Priority="72" SemiHidden="false"
    UnhideWhenUsed="false" Name="Colorful List"/>
    <w:LsdException Locked="false" Priority="73" SemiHidden="false"
    UnhideWhenUsed="false" Name="Colorful Grid"/>
    <w:LsdException Locked="false" Priority="60" SemiHidden="false"
    UnhideWhenUsed="false" Name="Light Shading Accent 1"/>
    <w:LsdException Locked="false" Priority="61" SemiHidden="false"
    UnhideWhenUsed="false" Name="Light List Accent 1"/>
    <w:LsdException Locked="false" Priority="62" SemiHidden="false"
    UnhideWhenUsed="false" Name="Light Grid Accent 1"/>
    <w:LsdException Locked="false" Priority="63" SemiHidden="false"
    UnhideWhenUsed="false" Name="Medium Shading 1 Accent 1"/>
    <w:LsdException Locked="false" Priority="64" SemiHidden="false"
    UnhideWhenUsed="false" Name="Medium Shading 2 Accent 1"/>
    <w:LsdException Locked="false" Priority="65" SemiHidden="false"
    UnhideWhenUsed="false" Name="Medium List 1 Accent 1"/>
    <w:LsdException Locked="false" UnhideWhenUsed="false" Name="Revision"/>
    <w:LsdException Locked="false" Priority="34" SemiHidden="false"
    UnhideWhenUsed="false" QFormat="true" Name="List Paragraph"/>
    <w:LsdException Locked="false" Priority="29" SemiHidden="false"
    UnhideWhenUsed="false" QFormat="true" Name="Quote"/>
    <w:LsdException Locked="false" Priority="30" SemiHidden="false"
    UnhideWhenUsed="false" QFormat="true" Name="Intense Quote"/>
    <w:LsdException Locked="false" Priority="66" SemiHidden="false"
    UnhideWhenUsed="false" Name="Medium List 2 Accent 1"/>
    <w:LsdException Locked="false" Priority="67" SemiHidden="false"
    UnhideWhenUsed="false" Name="Medium Grid 1 Accent 1"/>
    <w:LsdException Locked="false" Priority="68" SemiHidden="false"
    UnhideWhenUsed="false" Name="Medium Grid 2 Accent 1"/>
    <w:LsdException Locked="false" Priority="69" SemiHidden="false"
    UnhideWhenUsed="false" Name="Medium Grid 3 Accent 1"/>
    <w:LsdException Locked="false" Priority="70" SemiHidden="false"
    UnhideWhenUsed="false" Name="Dark List Accent 1"/>
    <w:LsdException Locked="false" Priority="71" SemiHidden="false"
    UnhideWhenUsed="false" Name="Colorful Shading Accent 1"/>
    <w:LsdException Locked="false" Priority="72" SemiHidden="false"
    UnhideWhenUsed="false" Name="Colorful List Accent 1"/>
    <w:LsdException Locked="false" Priority="73" SemiHidden="false"
    UnhideWhenUsed="false" Name="Colorful Grid Accent 1"/>
    <w:LsdException Locked="false" Priority="60" SemiHidden="false"
    UnhideWhenUsed="false" Name="Light Shading Accent 2"/>
    <w:LsdException Locked="false" Priority="61" SemiHidden="false"
    UnhideWhenUsed="false" Name="Light List Accent 2"/>
    <w:LsdException Locked="false" Priority="62" SemiHidden="false"
    UnhideWhenUsed="false" Name="Light Grid Accent 2"/>
    <w:LsdException Locked="false" Priority="63" SemiHidden="false"
    UnhideWhenUsed="false" Name="Medium Shading 1 Accent 2"/>
    <w:LsdException Locked="false" Priority="64" SemiHidden="false"
    UnhideWhenUsed="false" Name="Medium Shading 2 Accent 2"/>
    <w:LsdException Locked="false" Priority="65" SemiHidden="false"
    UnhideWhenUsed="false" Name="Medium List 1 Accent 2"/>
    <w:LsdException Locked="false" Priority="66" SemiHidden="false"
    UnhideWhenUsed="false" Name="Medium List 2 Accent 2"/>
    <w:LsdException Locked="false" Priority="67" SemiHidden="false"
    UnhideWhenUsed="false" Name="Medium Grid 1 Accent 2"/>
    <w:LsdException Locked="false" Priority="68" SemiHidden="false"
    UnhideWhenUsed="false" Name="Medium Grid 2 Accent 2"/>
    <w:LsdException Locked="false" Priority="69" SemiHidden="false"
    UnhideWhenUsed="false" Name="Medium Grid 3 Accent 2"/>
    <w:LsdException Locked="false" Priority="70" SemiHidden="false"
    UnhideWhenUsed="false" Name="Dark List Accent 2"/>
    <w:LsdException Locked="false" Priority="71" SemiHidden="false"
    UnhideWhenUsed="false" Name="Colorful Shading Accent 2"/>
    <w:LsdException Locked="false" Priority="72" SemiHidden="false"
    UnhideWhenUsed="false" Name="Colorful List Accent 2"/>
    <w:LsdException Locked="false" Priority="73" SemiHidden="false"
    UnhideWhenUsed="false" Name="Colorful Grid Accent 2"/>
    <w:LsdException Locked="false" Priority="60" SemiHidden="false"
    UnhideWhenUsed="false" Name="Light Shading Accent 3"/>
    <w:LsdException Locked="false" Priority="61" SemiHidden="false"
    UnhideWhenUsed="false" Name="Light List Accent 3"/>
    <w:LsdException Locked="false" Priority="62" SemiHidden="false"
    UnhideWhenUsed="false" Name="Light Grid Accent 3"/>
    <w:LsdException Locked="false" Priority="63" SemiHidden="false"
    UnhideWhenUsed="false" Name="Medium Shading 1 Accent 3"/>
    <w:LsdException Locked="false" Priority="64" SemiHidden="false"
    UnhideWhenUsed="false" Name="Medium Shading 2 Accent 3"/>
    <w:LsdException Locked="false" Priority="65" SemiHidden="false"
    UnhideWhenUsed="false" Name="Medium List 1 Accent 3"/>
    <w:LsdException Locked="false" Priority="66" SemiHidden="false"
    UnhideWhenUsed="false" Name="Medium List 2 Accent 3"/>
    <w:LsdException Locked="false" Priority="67" SemiHidden="false"
    UnhideWhenUsed="false" Name="Medium Grid 1 Accent 3"/>
    <w:LsdException Locked="false" Priority="68" SemiHidden="false"
    UnhideWhenUsed="false" Name="Medium Grid 2 Accent 3"/>
    <w:LsdException Locked="false" Priority="69" SemiHidden="false"
    UnhideWhenUsed="false" Name="Medium Grid 3 Accent 3"/>
    <w:LsdException Locked="false" Priority="70" SemiHidden="false"
    UnhideWhenUsed="false" Name="Dark List Accent 3"/>
    <w:LsdException Locked="false" Priority="71" SemiHidden="false"
    UnhideWhenUsed="false" Name="Colorful Shading Accent 3"/>
    <w:LsdException Locked="false" Priority="72" SemiHidden="false"
    UnhideWhenUsed="false" Name="Colorful List Accent 3"/>
    <w:LsdException Locked="false" Priority="73" SemiHidden="false"
    UnhideWhenUsed="false" Name="Colorful Grid Accent 3"/>
    <w:LsdException Locked="false" Priority="60" SemiHidden="false"
    UnhideWhenUsed="false" Name="Light Shading Accent 4"/>
    <w:LsdException Locked="false" Priority="61" SemiHidden="false"
    UnhideWhenUsed="false" Name="Light List Accent 4"/>
    <w:LsdException Locked="false" Priority="62" SemiHidden="false"
    UnhideWhenUsed="false" Name="Light Grid Accent 4"/>
    <w:LsdException Locked="false" Priority="63" SemiHidden="false"
    UnhideWhenUsed="false" Name="Medium Shading 1 Accent 4"/>
    <w:LsdException Locked="false" Priority="64" SemiHidden="false"
    UnhideWhenUsed="false" Name="Medium Shading 2 Accent 4"/>
    <w:LsdException Locked="false" Priority="65" SemiHidden="false"
    UnhideWhenUsed="false" Name="Medium List 1 Accent 4"/>
    <w:LsdException Locked="false" Priority="66" SemiHidden="false"
    UnhideWhenUsed="false" Name="Medium List 2 Accent 4"/>
    <w:LsdException Locked="false" Priority="67" SemiHidden="false"
    UnhideWhenUsed="false" Name="Medium Grid 1 Accent 4"/>
    <w:LsdException Locked="false" Priority="68" SemiHidden="false"
    UnhideWhenUsed="false" Name="Medium Grid 2 Accent 4"/>
    <w:LsdException Locked="false" Priority="69" SemiHidden="false"
    UnhideWhenUsed="false" Name="Medium Grid 3 Accent 4"/>
    <w:LsdException Locked="false" Priority="70" SemiHidden="false"
    UnhideWhenUsed="false" Name="Dark List Accent 4"/>
    <w:LsdException Locked="false" Priority="71" SemiHidden="false"
    UnhideWhenUsed="false" Name="Colorful Shading Accent 4"/>
    <w:LsdException Locked="false" Priority="72" SemiHidden="false"
    UnhideWhenUsed="false" Name="Colorful List Accent 4"/>
    <w:LsdException Locked="false" Priority="73" SemiHidden="false"
    UnhideWhenUsed="false" Name="Colorful Grid Accent 4"/>
    <w:LsdException Locked="false" Priority="60" SemiHidden="false"
    UnhideWhenUsed="false" Name="Light Shading Accent 5"/>
    <w:LsdException Locked="false" Priority="61" SemiHidden="false"
    UnhideWhenUsed="false" Name="Light List Accent 5"/>
    <w:LsdException Locked="false" Priority="62" SemiHidden="false"
    UnhideWhenUsed="false" Name="Light Grid Accent 5"/>
    <w:LsdException Locked="false" Priority="63" SemiHidden="false"
    UnhideWhenUsed="false" Name="Medium Shading 1 Accent 5"/>
    <w:LsdException Locked="false" Priority="64" SemiHidden="false"
    UnhideWhenUsed="false" Name="Medium Shading 2 Accent 5"/>
    <w:LsdException Locked="false" Priority="65" SemiHidden="false"
    UnhideWhenUsed="false" Name="Medium List 1 Accent 5"/>
    <w:LsdException Locked="false" Priority="66" SemiHidden="false"
    UnhideWhenUsed="false" Name="Medium List 2 Accent 5"/>
    <w:LsdException Locked="false" Priority="67" SemiHidden="false"
    UnhideWhenUsed="false" Name="Medium Grid 1 Accent 5"/>
    <w:LsdException Locked="false" Priority="68" SemiHidden="false"
    UnhideWhenUsed="false" Name="Medium Grid 2 Accent 5"/>
    <w:LsdException Locked="false" Priority="69" SemiHidden="false"
    UnhideWhenUsed="false" Name="Medium Grid 3 Accent 5"/>
    <w:LsdException Locked="false" Priority="70" SemiHidden="false"
    UnhideWhenUsed="false" Name="Dark List Accent 5"/>
    <w:LsdException Locked="false" Priority="71" SemiHidden="false"
    UnhideWhenUsed="false" Name="Colorful Shading Accent 5"/>
    <w:LsdException Locked="false" Priority="72" SemiHidden="false"
    UnhideWhenUsed="false" Name="Colorful List Accent 5"/>
    <w:LsdException Locked="false" Priority="73" SemiHidden="false"
    UnhideWhenUsed="false" Name="Colorful Grid Accent 5"/>
    <w:LsdException Locked="false" Priority="60" SemiHidden="false"
    UnhideWhenUsed="false" Name="Light Shading Accent 6"/>
    <w:LsdException Locked="false" Priority="61" SemiHidden="false"
    UnhideWhenUsed="false" Name="Light List Accent 6"/>
    <w:LsdException Locked="false" Priority="62" SemiHidden="false"
    UnhideWhenUsed="false" Name="Light Grid Accent 6"/>
    <w:LsdException Locked="false" Priority="63" SemiHidden="false"
    UnhideWhenUsed="false" Name="Medium Shading 1 Accent 6"/>
    <w:LsdException Locked="false" Priority="64" SemiHidden="false"
    UnhideWhenUsed="false" Name="Medium Shading 2 Accent 6"/>
    <w:LsdException Locked="false" Priority="65" SemiHidden="false"
    UnhideWhenUsed="false" Name="Medium List 1 Accent 6"/>
    <w:LsdException Locked="false" Priority="66" SemiHidden="false"
    UnhideWhenUsed="false" Name="Medium List 2 Accent 6"/>
    <w:LsdException Locked="false" Priority="67" SemiHidden="false"
    UnhideWhenUsed="false" Name="Medium Grid 1 Accent 6"/>
    <w:LsdException Locked="false" Priority="68" SemiHidden="false"
    UnhideWhenUsed="false" Name="Medium Grid 2 Accent 6"/>
    <w:LsdException Locked="false" Priority="69" SemiHidden="false"
    UnhideWhenUsed="false" Name="Medium Grid 3 Accent 6"/>
    <w:LsdException Locked="false" Priority="70" SemiHidden="false"
    UnhideWhenUsed="false" Name="Dark List Accent 6"/>
    <w:LsdException Locked="false" Priority="71" SemiHidden="false"
    UnhideWhenUsed="false" Name="Colorful Shading Accent 6"/>
    <w:LsdException Locked="false" Priority="72" SemiHidden="false"
    UnhideWhenUsed="false" Name="Colorful List Accent 6"/>
    <w:LsdException Locked="false" Priority="73" SemiHidden="false"
    UnhideWhenUsed="false" Name="Colorful Grid Accent 6"/>
    <w:LsdException Locked="false" Priority="19" SemiHidden="false"
    UnhideWhenUsed="false" QFormat="true" Name="Subtle Emphasis"/>
    <w:LsdException Locked="false" Priority="21" SemiHidden="false"
    UnhideWhenUsed="false" QFormat="true" Name="Intense Emphasis"/>
    <w:LsdException Locked="false" Priority="31" SemiHidden="false"
    UnhideWhenUsed="false" QFormat="true" Name="Subtle Reference"/>
    <w:LsdException Locked="false" Priority="32" SemiHidden="false"
    UnhideWhenUsed="false" QFormat="true" Name="Intense Reference"/>
    <w:LsdException Locked="false" Priority="33" SemiHidden="false"
    UnhideWhenUsed="false" QFormat="true" Name="Book Title"/>
    <w:LsdException Locked="false" Priority="37" Name="Bibliography"/>
    <w:LsdException Locked="false" Priority="39" QFormat="true" Name="TOC Heading"/>
    </w:LatentStyles>
    </xml><![endif]-->
    <style>
    <!--
    /* Font Definitions */
    @font-face
    {font-family:Calibri;
    panose-1:2 15 5 2 2 2 4 3 2 4;
    "Times New Roman";
    /* Style Definitions */
    p.MsoNormal, li.MsoNormal, div.MsoNormal
    margin:0in;
    margin-bottom:.0001pt;
    font-size:11.0pt;
    font-family:"Calibri","sans-serif";
    "Times New Roman";
    "Times New Roman";
    p.MsoAutoSig, li.MsoAutoSig, div.MsoAutoSig
    "E-mail Signature Char";
    margin:0in;
    margin-bottom:.0001pt;
    font-size:11.0pt;
    font-family:"Calibri","sans-serif";
    "Times New Roman";
    "Times New Roman";
    span.E-mailSignatureChar
    {"E-mail Signature Char";
    "E-mail Signature";}
    .MsoChpDefault
    font-size:11.0pt;
    "Times New Roman";
    "Times New Roman";
    @page WordSection1
    {size:8.5in 11.0in;
    margin:1.0in 1.0in 1.0in 1.0in;
    div.WordSection1
    {page:WordSection1;}
    -->
    </style>
    <!--[if gte mso 10]>
    <style>
    /* Style Definitions */
    table.MsoNormalTable
    {"Table Normal";
    font-size:11.0pt;
    font-family:"Calibri","sans-serif";
    </style>
    <![endif]-->
    </head>
    <body lang=EN-US style='tab-interval:.5in'>
    <div
    <p S<o:p></o:p></p>
    <p
    <p
    <p gte vml 1]><v:shapetype id="_x0000_t75"
    coordsize="21600,21600" o:spt="75" o:preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe"
    filled="f" stroked="f">
    <v:stroke joinstyle="miter"/>
    <v:formulas>
    <v:f eqn="if lineDrawn pixelLineWidth 0"/>
    <v:f eqn="sum @0 1 0"/>
    <v:f eqn="sum 0 0 @1"/>
    <v:f eqn="prod @2 1 2"/>
    <v:f eqn="prod @3 21600 pixelWidth"/>
    <v:f eqn="prod @3 21600 pixelHeight"/>
    <v:f eqn="sum @0 0 1"/>
    <v:f eqn="prod @6 1 2"/>
    <v:f eqn="prod @7 21600 pixelWidth"/>
    <v:f eqn="sum @8 21600 0"/>
    <v:f eqn="prod @7 21600 pixelHeight"/>
    <v:f eqn="sum @10 21600 0"/>
    </v:formulas>
    <v:path o:extrusionok="f" gradientshapeok="t" o:connecttype="rect"/>
    <o:lock v:ext="edit" aspectratio="t"/>
    </v:shapetype><v:shape id="_x0000_i1025" type="#_x0000_t75" style='width:381.75pt;
    height:63.75pt'>
    <v:imagedata src="Sanjay%20S_files/image001.png" o:title="Signature"/>
    </v:shape><![endif]--><![if !vml]><img width=509 height=85
    src="Sanjay%20S_files/image001.png" v:shapes="_x0000_i1025"><![endif]><o:p></o:p></p>
    <p
    </div>
    </body>
    </html>

    Hi ssanjay.brillio,
    According to your description, you'd like to send a email with an embedded image in the signature.
    I suggest you sending the image in the last of the body of email instead of operating the signature of email.
    The following example codes demonstrate how to send email using ImportHtml method with embedded images.
    SmtpMail oMail = new SmtpMail("TryIt");
    SmtpClient oSmtp = new SmtpClient();
    // Set sender email address, please change it to yours
    oMail.From = "[email protected]";
    // Set recipient email address, please change it to yours
    oMail.To = "[email protected]";
    // Set email subject
    oMail.Subject = "test HTML email with embedded image";
    // Your SMTP server address
    SmtpServer oServer = new SmtpServer("smtp.emailarchitect.net");
    // User and password for ESMTP authentication, if your server doesn't require
    // User authentication, please remove the following codes.
    oServer.User = "[email protected]";
    oServer.Password = "testpassword";
    // If your smtp server requires SSL/TLS connection, please add this line
    // oServer.ConnectType = SmtpConnectType.ConnectSSLAuto
    try {
    // Import html body and also import linked image as embedded images.
    // 'test.gif is in c:\\my picture
    oMail.ImportHtml("<html><body>test <img src=\"test.gif\"> importhtml</body></html>", "c:\\my picture", ImportHtmlBodyOptions.ImportLocalPictures | ImportHtmlBodyOptions.ImportCss);
    Console.WriteLine("start to send email with embedded image ...");
    oSmtp.SendMail(oServer, oMail);
    Console.WriteLine("email was sent successfully!");
    } catch (Exception ep) {
    Console.WriteLine("failed to send email with the following error:");
    Console.WriteLine(ep.Message);
    If you have any other concern regarding this issue, please feel free to let me know.
    Best regards,
    Youjun Tang
    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click
    HERE to participate the survey.

Maybe you are looking for

  • Help: I need to video underwater

    Hi there, I need to video some underwater video. I have research into some action camera like below: a) JVC GC-XA1 b) GoPro Hero 3 Questions: 1) Which of the above action camera are better ? 2) I will be doing multicam function as there are angles to

  • Extended Warranty increase of $1.01 per month?!  Ridiculous!!!

    I could see a small increase; but $1.01?!  Trying to justify this increase by saying the cost of phones is increasing and that you provide free shipping, etc., is ridiculous.  I have worked in purchasing and various other departments at companies whe

  • How do I delete a sent video message?

    Basically, I did something stupid. I do singing and I didn't have enough data on my iPod to record my voice and play it back so I used a video message and planned NOT to send it. It pointed at my face and I sang a song. I accidentally pressed send an

  • Adobe photoshop with classic

    I recently reinstalled mac os 10.2.8. I have adobephotoshop, but it runs on classic. I can open the application using classic but it doesnt let me print. The option is not even available for me. My printer is canon S900 and the driver is available fo

  • Go back to marker/frame

    i m new to director, i have a button called "introduction" when i click on it goes to a maker called "intro" on that marker frame i have also a "Hold On Frame" behaviour to hold the playhead & let the 30 sec. intro play but when the intro ends the pl