首先要保证执行电脑中已经配置好java环境,因为我们执行的是java文件。
然后在java中写出截屏代码,
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
Rectangle screenRectangle = new Rectangle(screenSize);
Robot robot = new Robot();
BufferedImage image = robot.createScreenCapture(screenRectangle);
// 截图保存的路径
File screenFile = new File("D://screen.png");
ImageIO.write(image, "png", screenFile);
然后去邮箱设置:
使用哪个邮箱发送邮件就去哪个邮箱的设置里打开:
然后进行邮箱设置:
// 发件人的邮箱地址和密码
public static String sendEmailAccount = "你的QQ号@qq.com";
// 如果有授权码,此处填写授权码
public static String sendEmailPassword = "刚才设置的授权码";
// 发件人邮箱的 SMTP 服务器地址, 可以登录web邮箱查询
public static String sendEmailSMTPHost = "smtp.qq.com";
// 收件人邮箱地址
public static String receiveMailAccount = "接收邮件的[email protected]";
// 参数配置
Properties props = new Properties();
props.setProperty("mail.transport.protocol", "smtp");
props.setProperty("mail.smtp.host", sendEmailSMTPHost);
props.setProperty("mail.smtp.auth", "true");
props.setProperty("mail.smtp.socketFactory.class", "javax.net.ssl.SSLSocketFactory");
props.setProperty("mail.smtp.port", "465");
props.setProperty("mail.smtp.socketFactory.port", "465");
// 根据配置创建会话对象,用于和邮件服务器交互
Session session = Session.getDefaultInstance(props);
session.setDebug(true);// 设置为debug模式,可以查看详细的发送log
// 创建一封邮件
Message message = createMimeMessage(session, sendEmailAccount, receiveMailAccount);
// 根据Session获取邮件传输对象
Transport transport = session.getTransport();
// 使用 邮箱账号 和 密码 链接邮件服务器,这里认证的邮箱必须与 message 中的发件人邮箱一直否则会报错
transport.connect(sendEmailAccount, sendEmailPassword);
// 发送邮件
transport.sendMessage(message, message.getAllRecipients());
// 关闭账号
transport.close();
然后,设置邮件内容:
Message message = new MimeMessage(session);
message.setFrom(new InternetAddress(sendMail));
message.setRecipient(MimeMessage.RecipientType.TO, new InternetAddress(receiveMail));
// 设置邮件标题
message.setSubject("发送测试邮件");
// 设置邮件正文
message.setText("这里是测试内容,请忽略此内容详情.");
MimeBodyPart text = new MimeBodyPart();
text.setContent("此邮件为系统自动发送<img src='cid:a'><img src='cid:b'>","text/html;charset=gb2312");
MimeBodyPart img = new MimeBodyPart();
DataHandler dh = new DataHandler(new FileDataSource("D://screen.png"));//图片路径
img.setDataHandler(dh);
img.setContentID("a");
MimeMultipart mm = new MimeMultipart();
mm.addBodyPart(text);
mm.addBodyPart(img);
mm.setSubType("related");// 设置正文与图片之间的关系
// 图班与正文的 body
MimeBodyPart all = new MimeBodyPart();
all.setContent(mm);
MimeMultipart mm2 = new MimeMultipart();
mm2.addBodyPart(all);
mm2.setSubType("mixed");
message.setContent(mm2);
message.setSentDate(new Date());
message.saveChanges();
return message;
然后把这个java文件导出成可执行jar包,放在桌面:
在桌面创建一个do.bat文件
@echo off
cd..
cd C:\Users\你电脑的账户名\DeskTop
java -jar sendscreen.jar
创建一个vbs文件:
Set ws = CreateObject("Wscript.Shell")
ws.Run "C:\Users\你电脑的账户名\Desktop\do.bat",0
最后一步,设置开机启动项:
随便打开一个文件夹,在地址栏复制粘贴:
C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp
然后吧刚才那个.vbs文件放进去,就可以了。
项目所有的东西都打包上传了:下载地址