Sendmail and attaching images

25 visualizaciones (últimos 30 días)
Paul Fishback
Paul Fishback el 23 de Abr. de 2018
Comentada: Image Analyst el 15 de Dic. de 2021
I'm encountering a problem when using sendmail to include an image attachment. I have sendmail set up so that it works. When I have a plot, I can send it by typing the following in the command window
print(gcf,'-dpng','-r0','bargraph.png')
sendmail('fishbacp@mail.gvsu.edu','Bargraph from script attached','bargraph.png')
However, when I try to include the above lines within a script, the actual image is not attached. Instead, I receive the email but it merely has "bargraph.png" appearing as the message body.

Respuesta aceptada

Paul Fishback
Paul Fishback el 23 de Abr. de 2018
Thank you so much. Am I correct that your code prompts the use to specify the attachment directory, as described below the line
%------------ Attach file ----------
I'm curious to know if there's a simpler way to do this so that I can let a script run for several hours (or couple of days) and then return to find that the image attachment has automatically been sent to my inbox.
  5 comentarios
Patrick Callahan
Patrick Callahan el 15 de Dic. de 2021
hoes mad
Image Analyst
Image Analyst el 15 de Dic. de 2021
@Patrick Callahan, not sure what "hoes mad" means. My hoes at least are perfectly happy hanging up in my garage, they're not mad at all. I'm not sure about your hoes.

Iniciar sesión para comentar.

Más respuestas (2)

Image Analyst
Image Analyst el 23 de Abr. de 2018
See attached demo. Make the trivial, obvious changes and it should work.

Deena Dayalan
Deena Dayalan el 7 de Feb. de 2019
Editada: Image Analyst el 7 de Feb. de 2019
Try this code
% Set up the preferences
setpref('Internet','SMTP_Server','smtp.gmail.com');
setpref('Internet','E_mail','urmailid@gmail.com'); %sender mail id
setpref('Internet','SMTP_Username','urmailid@gmail.com'); %sender mail id
setpref('Internet','SMTP_Password','urpassword'); %sender password
% The following is necessary only if you are using GMail
props = java.lang.System.getProperties;
props.setProperty('mail.smtp.auth','true');
props.setProperty('mail.smtp.starttls.enable','true');
%props.setProperty('mail.smtp.socketFactory.class', 'javax.net.ssl.SSLSocketFactory');
%props.setProperty('mail.smtp.socketFactory.port','465');
%------------ Attach file ---------------------------------------------------
% Have user browse and specify the full file name of the file to attach.
% startingFolder = pwd;
startingFolder = 'C:\Users\Public\Documents'; % Wherever you want.
defaultFileName = fullfile(startingFolder, '*.*');
% Let user browse to attach a file.
[baseFileName, folder] = uigetfile(defaultFileName, 'Select a file to attach to the e-mail.');
if baseFileName == 0
% User clicked the Cancel button.
return;
end
attachedFullFileName = fullfile(folder, baseFileName); % Combine folder and base name into full file name.
sendmail('receivermailid@gmail.com','matlab mail','hello matlab',attachedFullFileName);

Etiquetas

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by