Go Premium for a chance to win a PS4. Enter to Win

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 548
  • Last Modified:

DOS bat-file mail via Java

Hi,

I need to make a dos bat-file to shedule.
In this bat-file I call sqlplus to run a query that works fine.
The results of that query needs to be mailed to an address.
On the same machine I found an example of an old college. In his bat-file the last instruction is :
java -cp .;D:\BR\com\util\activation.jar;D:\BR\com\util\mail.jar com.util.CheckFile "D:\BR\LOG\UL3.bad" "mailadres@mail.du" "SQLLOADER" "111.x.111.xx" "Results of query
In the directory where I found his bat-file there is a diretory com\util with the files activation.jar, mail.jar and CheckFile.Class.
I copied this to my directory but it seems not to work (when executing the bat-file I receive an error on that mailing) . I have no experience with java at all.
I think that I may not copy the jar-file. But I need to install something? Also the Checkfile.Class I think I have to change this, but how can I do this. (With notepad it is rubbish)

Can someone give me a hint how I can solve this.

Thanks
0
haezeban
Asked:
haezeban
  • 3
  • 2
1 Solution
 
DTAHARLEVCommented:
just use the WSH smtp option, or something like this (from here:http://www.paulsadowski.com/WSH/cmdmail.htm)

@echo off & setlocal
:: set the temp file location
set tempmail=%temp%\tempmail.%random%.txt
:: echo the basic headers to the temp file
echo To: "Scripting Test" ^<test@paulsadowski.com^> > %tempmail%
echo From: "Me" ^<me@my.com^> >> %tempmail%
echo Subject: Test2 >> %tempmail%
:: echo the blank line that separates the header from the body text
echo.>>%tempmail%
:: echo the body text to the temp file
echo First line of body text.>> %tempmail%
echo Second line of body text.>> %tempmail%
:: move the temp file to the mail pickup directory
:: adjust this location for your system
move %tempmail% c:\inetpub\mailroot\pickup
set tempmail=
endlocal


0
 
haezebanAuthor Commented:
IIS doesn't run on that machine. I don't see it in administrative tools and not under services.
I don'think I can se your script.
anyway thanks
0
 
QlemoC++ DeveloperCommented:
For commandline send mail, it's best to use BLAT (www.blat.net). It allows for many options including sending attachments, and needs nothing installed on the executing PC.
0
Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
DTAHARLEVCommented:
try this:
Set objEmail = CreateObject("CDO.Message")
objEmail.From = "fromaddress@from.com"
objEmail.To = "toaddress@to.com"
objEmail.Subject = "subjkect"
objEmail.Textbody = "message"
objEmail.Send

If you have any MAPI client on the computer, it should work by using those settings.
0
 
haezebanAuthor Commented:
Hi,

I wrote a routine in C# and don't use anymore this javamail.
Thanks for help.
0
 
haezebanAuthor Commented:
I wrote a little programm in C#, and don't uses JAVAMAIL anymore (this was blackbox to me).
it works almost (just need to post a new question but in another mailgroup).

The code :
using System;
using System.Web.Mail;
using System.IO;

namespace Mailer
{
      /// <summary>
      /// This Class sends emails with or without attachment(s).
      /// </summary>
      ///
      public class Mailer
      {
            private MailMessage message;
            private bool problem = false;
            private string problemDescription = "";

            public bool Problem
            {
                  get {return problem;}
            }

            public string ProblemDescription
            {
                  get      {return problemDescription;}
            }

            public Mailer()
            {
                  message = new MailMessage();
            }

            public void sendMail(string to, string from, string subject, string body, string server, string attachment)
            {
                  try
                  {
                        message.To = to;
                        message.From = from;
                        message.Subject = subject;
                        message.Body = body;
                        if (attachment.Length > 4)
                        {
                              if (File.Exists(attachment)) message.Attachments.Add(new MailAttachment(attachment));
                        }
                  
                        try
                        {
                              SmtpMail.SmtpServer = server;
                              SmtpMail.Send(message);
                        }
                        catch(System.Web.HttpException ehttp)
                        {
                              problem = true;
                              problemDescription = ehttp.Message + "\n\r";
                              problemDescription += ehttp.ToString();
                        }
                  }
                  catch(System.Exception e)
                  {
                        problem = true;
                        problemDescription = e.Message + "\n\r";
                        problemDescription += e.ToString();
                  }
            }
      }
}

Thanks to all experts
0

Featured Post

Free Tool: Subnet Calculator

The subnet calculator helps you design networks by taking an IP address and network mask and returning information such as network, broadcast address, and host range.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

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