By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
434,709 Members | 2,164 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 434,709 IT Pros & Developers. It's quick & easy.

HELP: ASP.NET Site Sending E-mail and Writing to Event Log

P: n/a
We are developing an ASP.NET 2.0 (C#) application, and I'm having troubles
sending e-mail from the server when accessing the web site from a separate
client computer. Also, in the same scenario, I'm having trouble writing to
the server's event log.

Here's some details:

Server and workstation both in the same workgroup
Logged into server as local Administrator
Logged into workstation as a local user that is only in the Users group on
the workstation
The local user on the workstation is also defined as a local user on the
server with same name and password (and only in the Users group on the
server too)
Server is Windows Server 2003 running IIS 6.0
Workstation is Windows XP Professional
ASP.NET 2.0 (C#) web site - intranet only, not a public Internet web site
Web.config snippet
<system.web>
<authentication mode="Windows"/>
<identity impersonate="true"/>
</system.web>

For the e-mailing problem
..aspx code-behind code snippet
string fromEmail = "do********@testingsendemail.com";
string fromDisplayName = "Testing SendEmail";
string toEmail = "pe****@company.com";
string pathAndFile = @"D:\Temp\testing.log";
string exceptionInfo = "Testing SendEmail";

System.Net.Mail.SmtpClient smtpclient = new
System.Net.Mail.SmtpClient();
smtpclient.DeliveryMethod =
System.Net.Mail.SmtpDeliveryMethod.PickupDirectory FromIis;

// For smtpclient.Host, I've tried "localhost", I've tried
System.Net.Dns.GetHostName(),
// and I've tried not setting the property at all
// none of these work
smtpclient.Host = System.Net.Dns.GetHostName();

// For smtpclient.PickupDirectoryLocation, I've tried not setting it
and I've tried
// explicitly setting the path to the IIS pickup folder
// neither of these work
smtpclient.PickupDirectoryLocation = @"C:\Inetpub\mailroot\Pickup";

// For smtpclient.Port, I've tried not setting it and I've tried
explicitly setting it to 25
// neither of these work
smtpclient.Port = 25;

// For smtpclient.UseDefaultCredentials, I've tried not setting it
and I've tried
// setting it to true
// neither of these work
smtpclient.UseDefaultCredentials = true;

System.Net.Mail.MailAddress from = new
System.Net.Mail.MailAddress(fromEmail, fromDisplayName);
System.Net.Mail.MailAddress to = new
System.Net.Mail.MailAddress(toEmail);
System.Net.Mail.Attachment attachment = new
System.Net.Mail.Attachment(pathAndFile);

using (System.Net.Mail.MailMessage message = new
System.Net.Mail.MailMessage(from, to))
{
message.Attachments.Add(attachment);
message.Body = exceptionInfo;
message.Priority = System.Net.Mail.MailPriority.High;
message.Subject = "Testing SendEmail";

// Exception is throw here trying to call the Send method
smtpclient.Send(message);
}

attachment.Dispose();
The exception details are: System.Net.Mail.SmtpException: Cannot get IIS
pickup directory.

From the client computer, I can navigate to the site and do whatever without
any problems. But, when the site tries to send an e-mail from the server
for the session started by the client in the scenario described above, it
fails.

For the writing to the event log problem
..aspx code-behind code snippet
string exceptionInfo = "Testing WriteToEventLog";
System.Diagnostics.EventLog log = new System.Diagnostics.EventLog();
log.Log = "Application";
log.Source = "Application";

try
{
log.WriteEntry(exceptionInfo,
System.Diagnostics.EventLogEntryType.Error);
}
finally
{
log.Close();
log.Dispose();
}
The exception details are: System.ComponentModel.Win32Exception: Access is
denied (Cannot open log for source 'Application'. You may not have write
access.)

Again, from the client computer, I can navigate to the site and do whatever
without any problems. But, when the site tries to write to the event log on
the server for the session started by the client in the scenario described
above, it fails.

Basically, this is supposed to be an exception notification thing.

Am I doing something wrong? Am I missing something? How can I make the
above scenario work?

Thanks.

May 4 '06 #1
Share this Question
Share on Google+
6 Replies


P: n/a
I've never added code to specify "pickup location" and the rest. That is all
configured generally in IIS Admin. Do you have a specific requirement to do
it this way?

Jeff
"rekaeps" <no****@company.com> wrote in message
news:eY****************@TK2MSFTNGP05.phx.gbl...
We are developing an ASP.NET 2.0 (C#) application, and I'm having troubles
sending e-mail from the server when accessing the web site from a separate
client computer. Also, in the same scenario, I'm having trouble writing
to
the server's event log.

Here's some details:

Server and workstation both in the same workgroup
Logged into server as local Administrator
Logged into workstation as a local user that is only in the Users group on
the workstation
The local user on the workstation is also defined as a local user on the
server with same name and password (and only in the Users group on the
server too)
Server is Windows Server 2003 running IIS 6.0
Workstation is Windows XP Professional
ASP.NET 2.0 (C#) web site - intranet only, not a public Internet web site
Web.config snippet
<system.web>
<authentication mode="Windows"/>
<identity impersonate="true"/>
</system.web>

For the e-mailing problem
.aspx code-behind code snippet
string fromEmail = "do********@testingsendemail.com";
string fromDisplayName = "Testing SendEmail";
string toEmail = "pe****@company.com";
string pathAndFile = @"D:\Temp\testing.log";
string exceptionInfo = "Testing SendEmail";

System.Net.Mail.SmtpClient smtpclient = new
System.Net.Mail.SmtpClient();
smtpclient.DeliveryMethod =
System.Net.Mail.SmtpDeliveryMethod.PickupDirectory FromIis;

// For smtpclient.Host, I've tried "localhost", I've tried
System.Net.Dns.GetHostName(),
// and I've tried not setting the property at all
// none of these work
smtpclient.Host = System.Net.Dns.GetHostName();

// For smtpclient.PickupDirectoryLocation, I've tried not setting
it
and I've tried
// explicitly setting the path to the IIS pickup folder
// neither of these work
smtpclient.PickupDirectoryLocation = @"C:\Inetpub\mailroot\Pickup";

// For smtpclient.Port, I've tried not setting it and I've tried
explicitly setting it to 25
// neither of these work
smtpclient.Port = 25;

// For smtpclient.UseDefaultCredentials, I've tried not setting it
and I've tried
// setting it to true
// neither of these work
smtpclient.UseDefaultCredentials = true;

System.Net.Mail.MailAddress from = new
System.Net.Mail.MailAddress(fromEmail, fromDisplayName);
System.Net.Mail.MailAddress to = new
System.Net.Mail.MailAddress(toEmail);
System.Net.Mail.Attachment attachment = new
System.Net.Mail.Attachment(pathAndFile);

using (System.Net.Mail.MailMessage message = new
System.Net.Mail.MailMessage(from, to))
{
message.Attachments.Add(attachment);
message.Body = exceptionInfo;
message.Priority = System.Net.Mail.MailPriority.High;
message.Subject = "Testing SendEmail";

// Exception is throw here trying to call the Send method
smtpclient.Send(message);
}

attachment.Dispose();
The exception details are: System.Net.Mail.SmtpException: Cannot get IIS
pickup directory.

From the client computer, I can navigate to the site and do whatever
without
any problems. But, when the site tries to send an e-mail from the server
for the session started by the client in the scenario described above, it
fails.

For the writing to the event log problem
.aspx code-behind code snippet
string exceptionInfo = "Testing WriteToEventLog";
System.Diagnostics.EventLog log = new
System.Diagnostics.EventLog();
log.Log = "Application";
log.Source = "Application";

try
{
log.WriteEntry(exceptionInfo,
System.Diagnostics.EventLogEntryType.Error);
}
finally
{
log.Close();
log.Dispose();
}
The exception details are: System.ComponentModel.Win32Exception: Access is
denied (Cannot open log for source 'Application'. You may not have write
access.)

Again, from the client computer, I can navigate to the site and do
whatever
without any problems. But, when the site tries to write to the event log
on
the server for the session started by the client in the scenario described
above, it fails.

Basically, this is supposed to be an exception notification thing.

Am I doing something wrong? Am I missing something? How can I make the
above scenario work?

Thanks.

May 4 '06 #2

P: n/a
No, we don't have a specific requirement to do it that way. I was simply
trying all sorts of different things to try to get it to work. I initially
tried without specifying the "pickup location" and the rest, but it wasn't
working (it was throwing the exception). So, I started trying the other
properties to see if I could get it to work. And, unfortunately, specifying
the "pickup location" and the rest didn't work either--I still received the
same exception.

Any thoughts?

"Jeff Dillon" <je********@hotmail.com> wrote in message
news:Ov**************@TK2MSFTNGP03.phx.gbl...
I've never added code to specify "pickup location" and the rest. That is all configured generally in IIS Admin. Do you have a specific requirement to do it this way?

Jeff
"rekaeps" <no****@company.com> wrote in message
news:eY****************@TK2MSFTNGP05.phx.gbl...
We are developing an ASP.NET 2.0 (C#) application, and I'm having troubles sending e-mail from the server when accessing the web site from a separate client computer. Also, in the same scenario, I'm having trouble writing
to
the server's event log.

Here's some details:

Server and workstation both in the same workgroup
Logged into server as local Administrator
Logged into workstation as a local user that is only in the Users group on the workstation
The local user on the workstation is also defined as a local user on the
server with same name and password (and only in the Users group on the
server too)
Server is Windows Server 2003 running IIS 6.0
Workstation is Windows XP Professional
ASP.NET 2.0 (C#) web site - intranet only, not a public Internet web site

Web.config snippet
<system.web>
<authentication mode="Windows"/>
<identity impersonate="true"/>
</system.web>

For the e-mailing problem
.aspx code-behind code snippet
string fromEmail = "do********@testingsendemail.com";
string fromDisplayName = "Testing SendEmail";
string toEmail = "pe****@company.com";
string pathAndFile = @"D:\Temp\testing.log";
string exceptionInfo = "Testing SendEmail";

System.Net.Mail.SmtpClient smtpclient = new
System.Net.Mail.SmtpClient();
smtpclient.DeliveryMethod =
System.Net.Mail.SmtpDeliveryMethod.PickupDirectory FromIis;

// For smtpclient.Host, I've tried "localhost", I've tried
System.Net.Dns.GetHostName(),
// and I've tried not setting the property at all
// none of these work
smtpclient.Host = System.Net.Dns.GetHostName();

// For smtpclient.PickupDirectoryLocation, I've tried not setting
it
and I've tried
// explicitly setting the path to the IIS pickup folder
// neither of these work
smtpclient.PickupDirectoryLocation = @"C:\Inetpub\mailroot\Pickup";
// For smtpclient.Port, I've tried not setting it and I've tried
explicitly setting it to 25
// neither of these work
smtpclient.Port = 25;

// For smtpclient.UseDefaultCredentials, I've tried not setting it and I've tried
// setting it to true
// neither of these work
smtpclient.UseDefaultCredentials = true;

System.Net.Mail.MailAddress from = new
System.Net.Mail.MailAddress(fromEmail, fromDisplayName);
System.Net.Mail.MailAddress to = new
System.Net.Mail.MailAddress(toEmail);
System.Net.Mail.Attachment attachment = new
System.Net.Mail.Attachment(pathAndFile);

using (System.Net.Mail.MailMessage message = new
System.Net.Mail.MailMessage(from, to))
{
message.Attachments.Add(attachment);
message.Body = exceptionInfo;
message.Priority = System.Net.Mail.MailPriority.High;
message.Subject = "Testing SendEmail";

// Exception is throw here trying to call the Send method
smtpclient.Send(message);
}

attachment.Dispose();
The exception details are: System.Net.Mail.SmtpException: Cannot get IIS
pickup directory.

From the client computer, I can navigate to the site and do whatever
without
any problems. But, when the site tries to send an e-mail from the server for the session started by the client in the scenario described above, it fails.

For the writing to the event log problem
.aspx code-behind code snippet
string exceptionInfo = "Testing WriteToEventLog";
System.Diagnostics.EventLog log = new
System.Diagnostics.EventLog();
log.Log = "Application";
log.Source = "Application";

try
{
log.WriteEntry(exceptionInfo,
System.Diagnostics.EventLogEntryType.Error);
}
finally
{
log.Close();
log.Dispose();
}
The exception details are: System.ComponentModel.Win32Exception: Access is denied (Cannot open log for source 'Application'. You may not have write access.)

Again, from the client computer, I can navigate to the site and do
whatever
without any problems. But, when the site tries to write to the event log on
the server for the session started by the client in the scenario described above, it fails.

Basically, this is supposed to be an exception notification thing.

Am I doing something wrong? Am I missing something? How can I make the
above scenario work?

Thanks.


May 4 '06 #3

P: n/a
Does it work when browsing from the same box?

You might need Basic auth

Jeff

"rekaeps" <no****@company.com> wrote in message
news:ek**************@TK2MSFTNGP05.phx.gbl...
No, we don't have a specific requirement to do it that way. I was simply
trying all sorts of different things to try to get it to work. I
initially
tried without specifying the "pickup location" and the rest, but it wasn't
working (it was throwing the exception). So, I started trying the other
properties to see if I could get it to work. And, unfortunately,
specifying
the "pickup location" and the rest didn't work either--I still received
the
same exception.

Any thoughts?

"Jeff Dillon" <je********@hotmail.com> wrote in message
news:Ov**************@TK2MSFTNGP03.phx.gbl...
I've never added code to specify "pickup location" and the rest. That is

all
configured generally in IIS Admin. Do you have a specific requirement to

do
it this way?

Jeff
"rekaeps" <no****@company.com> wrote in message
news:eY****************@TK2MSFTNGP05.phx.gbl...
> We are developing an ASP.NET 2.0 (C#) application, and I'm having troubles > sending e-mail from the server when accessing the web site from a separate > client computer. Also, in the same scenario, I'm having trouble
> writing
> to
> the server's event log.
>
> Here's some details:
>
> Server and workstation both in the same workgroup
> Logged into server as local Administrator
> Logged into workstation as a local user that is only in the Users group on > the workstation
> The local user on the workstation is also defined as a local user on
> the
> server with same name and password (and only in the Users group on the
> server too)
> Server is Windows Server 2003 running IIS 6.0
> Workstation is Windows XP Professional
> ASP.NET 2.0 (C#) web site - intranet only, not a public Internet web site >
>
> Web.config snippet
> <system.web>
> <authentication mode="Windows"/>
> <identity impersonate="true"/>
> </system.web>
>
>
>
> For the e-mailing problem
> .aspx code-behind code snippet
> string fromEmail = "do********@testingsendemail.com";
> string fromDisplayName = "Testing SendEmail";
> string toEmail = "pe****@company.com";
> string pathAndFile = @"D:\Temp\testing.log";
> string exceptionInfo = "Testing SendEmail";
>
> System.Net.Mail.SmtpClient smtpclient = new
> System.Net.Mail.SmtpClient();
> smtpclient.DeliveryMethod =
> System.Net.Mail.SmtpDeliveryMethod.PickupDirectory FromIis;
>
> // For smtpclient.Host, I've tried "localhost", I've tried
> System.Net.Dns.GetHostName(),
> // and I've tried not setting the property at all
> // none of these work
> smtpclient.Host = System.Net.Dns.GetHostName();
>
> // For smtpclient.PickupDirectoryLocation, I've tried not
> setting
> it
> and I've tried
> // explicitly setting the path to the IIS pickup folder
> // neither of these work
> smtpclient.PickupDirectoryLocation = @"C:\Inetpub\mailroot\Pickup"; >
> // For smtpclient.Port, I've tried not setting it and I've tried
> explicitly setting it to 25
> // neither of these work
> smtpclient.Port = 25;
>
> // For smtpclient.UseDefaultCredentials, I've tried not setting it > and I've tried
> // setting it to true
> // neither of these work
> smtpclient.UseDefaultCredentials = true;
>
> System.Net.Mail.MailAddress from = new
> System.Net.Mail.MailAddress(fromEmail, fromDisplayName);
> System.Net.Mail.MailAddress to = new
> System.Net.Mail.MailAddress(toEmail);
> System.Net.Mail.Attachment attachment = new
> System.Net.Mail.Attachment(pathAndFile);
>
> using (System.Net.Mail.MailMessage message = new
> System.Net.Mail.MailMessage(from, to))
> {
> message.Attachments.Add(attachment);
> message.Body = exceptionInfo;
> message.Priority = System.Net.Mail.MailPriority.High;
> message.Subject = "Testing SendEmail";
>
> // Exception is throw here trying to call the Send method
> smtpclient.Send(message);
> }
>
> attachment.Dispose();
>
>
> The exception details are: System.Net.Mail.SmtpException: Cannot get
> IIS
> pickup directory.
>
> From the client computer, I can navigate to the site and do whatever
> without
> any problems. But, when the site tries to send an e-mail from the server > for the session started by the client in the scenario described above, it > fails.
>
>
>
> For the writing to the event log problem
> .aspx code-behind code snippet
> string exceptionInfo = "Testing WriteToEventLog";
> System.Diagnostics.EventLog log = new
> System.Diagnostics.EventLog();
> log.Log = "Application";
> log.Source = "Application";
>
> try
> {
> log.WriteEntry(exceptionInfo,
> System.Diagnostics.EventLogEntryType.Error);
> }
> finally
> {
> log.Close();
> log.Dispose();
> }
>
>
> The exception details are: System.ComponentModel.Win32Exception: Access is > denied (Cannot open log for source 'Application'. You may not have write > access.)
>
> Again, from the client computer, I can navigate to the site and do
> whatever
> without any problems. But, when the site tries to write to the event log > on
> the server for the session started by the client in the scenario described > above, it fails.
>
>
>
> Basically, this is supposed to be an exception notification thing.
>
> Am I doing something wrong? Am I missing something? How can I make
> the
> above scenario work?
>
>
>
> Thanks.
>
>
>



May 4 '06 #4

P: n/a
Yes, it works when I browse from the same box (the server that is running
IIS and the app.).

"Jeff Dillon" <je********@hotmail.com> wrote in message
news:%2****************@TK2MSFTNGP05.phx.gbl...
Does it work when browsing from the same box?

You might need Basic auth

Jeff

"rekaeps" <no****@company.com> wrote in message
news:ek**************@TK2MSFTNGP05.phx.gbl...
No, we don't have a specific requirement to do it that way. I was simply trying all sorts of different things to try to get it to work. I
initially
tried without specifying the "pickup location" and the rest, but it wasn't working (it was throwing the exception). So, I started trying the other
properties to see if I could get it to work. And, unfortunately,
specifying
the "pickup location" and the rest didn't work either--I still received
the
same exception.

Any thoughts?

"Jeff Dillon" <je********@hotmail.com> wrote in message
news:Ov**************@TK2MSFTNGP03.phx.gbl...
I've never added code to specify "pickup location" and the rest. That is
all
configured generally in IIS Admin. Do you have a specific requirement
to do
it this way?

Jeff
"rekaeps" <no****@company.com> wrote in message
news:eY****************@TK2MSFTNGP05.phx.gbl...
> We are developing an ASP.NET 2.0 (C#) application, and I'm having

troubles
> sending e-mail from the server when accessing the web site from a

separate
> client computer. Also, in the same scenario, I'm having trouble
> writing
> to
> the server's event log.
>
> Here's some details:
>
> Server and workstation both in the same workgroup
> Logged into server as local Administrator
> Logged into workstation as a local user that is only in the Users
group on
> the workstation
> The local user on the workstation is also defined as a local user on
> the
> server with same name and password (and only in the Users group on
the > server too)
> Server is Windows Server 2003 running IIS 6.0
> Workstation is Windows XP Professional
> ASP.NET 2.0 (C#) web site - intranet only, not a public Internet web

site
>
>
> Web.config snippet
> <system.web>
> <authentication mode="Windows"/>
> <identity impersonate="true"/>
> </system.web>
>
>
>
> For the e-mailing problem
> .aspx code-behind code snippet
> string fromEmail = "do********@testingsendemail.com";
> string fromDisplayName = "Testing SendEmail";
> string toEmail = "pe****@company.com";
> string pathAndFile = @"D:\Temp\testing.log";
> string exceptionInfo = "Testing SendEmail";
>
> System.Net.Mail.SmtpClient smtpclient = new
> System.Net.Mail.SmtpClient();
> smtpclient.DeliveryMethod =
> System.Net.Mail.SmtpDeliveryMethod.PickupDirectory FromIis;
>
> // For smtpclient.Host, I've tried "localhost", I've tried
> System.Net.Dns.GetHostName(),
> // and I've tried not setting the property at all
> // none of these work
> smtpclient.Host = System.Net.Dns.GetHostName();
>
> // For smtpclient.PickupDirectoryLocation, I've tried not
> setting
> it
> and I've tried
> // explicitly setting the path to the IIS pickup folder
> // neither of these work
> smtpclient.PickupDirectoryLocation =

@"C:\Inetpub\mailroot\Pickup";
>
> // For smtpclient.Port, I've tried not setting it and I've tried > explicitly setting it to 25
> // neither of these work
> smtpclient.Port = 25;
>
> // For smtpclient.UseDefaultCredentials, I've tried not

setting it
> and I've tried
> // setting it to true
> // neither of these work
> smtpclient.UseDefaultCredentials = true;
>
> System.Net.Mail.MailAddress from = new
> System.Net.Mail.MailAddress(fromEmail, fromDisplayName);
> System.Net.Mail.MailAddress to = new
> System.Net.Mail.MailAddress(toEmail);
> System.Net.Mail.Attachment attachment = new
> System.Net.Mail.Attachment(pathAndFile);
>
> using (System.Net.Mail.MailMessage message = new
> System.Net.Mail.MailMessage(from, to))
> {
> message.Attachments.Add(attachment);
> message.Body = exceptionInfo;
> message.Priority = System.Net.Mail.MailPriority.High;
> message.Subject = "Testing SendEmail";
>
> // Exception is throw here trying to call the Send method
> smtpclient.Send(message);
> }
>
> attachment.Dispose();
>
>
> The exception details are: System.Net.Mail.SmtpException: Cannot get
> IIS
> pickup directory.
>
> From the client computer, I can navigate to the site and do whatever
> without
> any problems. But, when the site tries to send an e-mail from the

server
> for the session started by the client in the scenario described
above, it
> fails.
>
>
>
> For the writing to the event log problem
> .aspx code-behind code snippet
> string exceptionInfo = "Testing WriteToEventLog";
> System.Diagnostics.EventLog log = new
> System.Diagnostics.EventLog();
> log.Log = "Application";
> log.Source = "Application";
>
> try
> {
> log.WriteEntry(exceptionInfo,
> System.Diagnostics.EventLogEntryType.Error);
> }
> finally
> {
> log.Close();
> log.Dispose();
> }
>
>
> The exception details are: System.ComponentModel.Win32Exception:
Access is
> denied (Cannot open log for source 'Application'. You may not have

write
> access.)
>
> Again, from the client computer, I can navigate to the site and do
> whatever
> without any problems. But, when the site tries to write to the event

log
> on
> the server for the session started by the client in the scenario

described
> above, it fails.
>
>
>
> Basically, this is supposed to be an exception notification thing.
>
> Am I doing something wrong? Am I missing something? How can I make
> the
> above scenario work?
>
>
>
> Thanks.
>
>
>



May 4 '06 #5

P: n/a
Thanks Jeff for your suggestions. Since this is an intranet app., it is a
requirement that we use Integrated Windows Authentication (can't use Basic
auth).

We're still having troubles, and this issue is quickly becoming high
priority.

Anyone have any suggestions/ideas?

"rekaeps" <no****@company.com> wrote in message
news:eY****************@TK2MSFTNGP05.phx.gbl...
We are developing an ASP.NET 2.0 (C#) application, and I'm having troubles
sending e-mail from the server when accessing the web site from a separate
client computer. Also, in the same scenario, I'm having trouble writing to the server's event log.

Here's some details:

Server and workstation both in the same workgroup
Logged into server as local Administrator
Logged into workstation as a local user that is only in the Users group on
the workstation
The local user on the workstation is also defined as a local user on the
server with same name and password (and only in the Users group on the
server too)
Server is Windows Server 2003 running IIS 6.0
Workstation is Windows XP Professional
ASP.NET 2.0 (C#) web site - intranet only, not a public Internet web site
Web.config snippet
<system.web>
<authentication mode="Windows"/>
<identity impersonate="true"/>
</system.web>

For the e-mailing problem
.aspx code-behind code snippet
string fromEmail = "do********@testingsendemail.com";
string fromDisplayName = "Testing SendEmail";
string toEmail = "pe****@company.com";
string pathAndFile = @"D:\Temp\testing.log";
string exceptionInfo = "Testing SendEmail";

System.Net.Mail.SmtpClient smtpclient = new
System.Net.Mail.SmtpClient();
smtpclient.DeliveryMethod =
System.Net.Mail.SmtpDeliveryMethod.PickupDirectory FromIis;

// For smtpclient.Host, I've tried "localhost", I've tried
System.Net.Dns.GetHostName(),
// and I've tried not setting the property at all
// none of these work
smtpclient.Host = System.Net.Dns.GetHostName();

// For smtpclient.PickupDirectoryLocation, I've tried not setting it and I've tried
// explicitly setting the path to the IIS pickup folder
// neither of these work
smtpclient.PickupDirectoryLocation = @"C:\Inetpub\mailroot\Pickup";
// For smtpclient.Port, I've tried not setting it and I've tried
explicitly setting it to 25
// neither of these work
smtpclient.Port = 25;

// For smtpclient.UseDefaultCredentials, I've tried not setting it
and I've tried
// setting it to true
// neither of these work
smtpclient.UseDefaultCredentials = true;

System.Net.Mail.MailAddress from = new
System.Net.Mail.MailAddress(fromEmail, fromDisplayName);
System.Net.Mail.MailAddress to = new
System.Net.Mail.MailAddress(toEmail);
System.Net.Mail.Attachment attachment = new
System.Net.Mail.Attachment(pathAndFile);

using (System.Net.Mail.MailMessage message = new
System.Net.Mail.MailMessage(from, to))
{
message.Attachments.Add(attachment);
message.Body = exceptionInfo;
message.Priority = System.Net.Mail.MailPriority.High;
message.Subject = "Testing SendEmail";

// Exception is throw here trying to call the Send method
smtpclient.Send(message);
}

attachment.Dispose();
The exception details are: System.Net.Mail.SmtpException: Cannot get IIS
pickup directory.

From the client computer, I can navigate to the site and do whatever without any problems. But, when the site tries to send an e-mail from the server
for the session started by the client in the scenario described above, it
fails.

For the writing to the event log problem
.aspx code-behind code snippet
string exceptionInfo = "Testing WriteToEventLog";
System.Diagnostics.EventLog log = new System.Diagnostics.EventLog(); log.Log = "Application";
log.Source = "Application";

try
{
log.WriteEntry(exceptionInfo,
System.Diagnostics.EventLogEntryType.Error);
}
finally
{
log.Close();
log.Dispose();
}
The exception details are: System.ComponentModel.Win32Exception: Access is
denied (Cannot open log for source 'Application'. You may not have write
access.)

Again, from the client computer, I can navigate to the site and do whatever without any problems. But, when the site tries to write to the event log on the server for the session started by the client in the scenario described
above, it fails.

Basically, this is supposed to be an exception notification thing.

Am I doing something wrong? Am I missing something? How can I make the
above scenario work?

Thanks.

May 4 '06 #6

P: n/a
You can't use Integrated Auth from other machines! Unless you set up
Kerberos, which is fairly involved.

You'll need Basic. Try it and see

Jeff

"rekaeps" <no****@company.com> wrote in message
news:eM**************@TK2MSFTNGP04.phx.gbl...
Thanks Jeff for your suggestions. Since this is an intranet app., it is
a
requirement that we use Integrated Windows Authentication (can't use Basic
auth).

We're still having troubles, and this issue is quickly becoming high
priority.

Anyone have any suggestions/ideas?

"rekaeps" <no****@company.com> wrote in message
news:eY****************@TK2MSFTNGP05.phx.gbl...
We are developing an ASP.NET 2.0 (C#) application, and I'm having
troubles
sending e-mail from the server when accessing the web site from a
separate
client computer. Also, in the same scenario, I'm having trouble writing

to
the server's event log.

Here's some details:

Server and workstation both in the same workgroup
Logged into server as local Administrator
Logged into workstation as a local user that is only in the Users group
on
the workstation
The local user on the workstation is also defined as a local user on the
server with same name and password (and only in the Users group on the
server too)
Server is Windows Server 2003 running IIS 6.0
Workstation is Windows XP Professional
ASP.NET 2.0 (C#) web site - intranet only, not a public Internet web site
Web.config snippet
<system.web>
<authentication mode="Windows"/>
<identity impersonate="true"/>
</system.web>

For the e-mailing problem
.aspx code-behind code snippet
string fromEmail = "do********@testingsendemail.com";
string fromDisplayName = "Testing SendEmail";
string toEmail = "pe****@company.com";
string pathAndFile = @"D:\Temp\testing.log";
string exceptionInfo = "Testing SendEmail";

System.Net.Mail.SmtpClient smtpclient = new
System.Net.Mail.SmtpClient();
smtpclient.DeliveryMethod =
System.Net.Mail.SmtpDeliveryMethod.PickupDirectory FromIis;

// For smtpclient.Host, I've tried "localhost", I've tried
System.Net.Dns.GetHostName(),
// and I've tried not setting the property at all
// none of these work
smtpclient.Host = System.Net.Dns.GetHostName();

// For smtpclient.PickupDirectoryLocation, I've tried not setting

it
and I've tried
// explicitly setting the path to the IIS pickup folder
// neither of these work
smtpclient.PickupDirectoryLocation =

@"C:\Inetpub\mailroot\Pickup";

// For smtpclient.Port, I've tried not setting it and I've tried
explicitly setting it to 25
// neither of these work
smtpclient.Port = 25;

// For smtpclient.UseDefaultCredentials, I've tried not setting
it
and I've tried
// setting it to true
// neither of these work
smtpclient.UseDefaultCredentials = true;

System.Net.Mail.MailAddress from = new
System.Net.Mail.MailAddress(fromEmail, fromDisplayName);
System.Net.Mail.MailAddress to = new
System.Net.Mail.MailAddress(toEmail);
System.Net.Mail.Attachment attachment = new
System.Net.Mail.Attachment(pathAndFile);

using (System.Net.Mail.MailMessage message = new
System.Net.Mail.MailMessage(from, to))
{
message.Attachments.Add(attachment);
message.Body = exceptionInfo;
message.Priority = System.Net.Mail.MailPriority.High;
message.Subject = "Testing SendEmail";

// Exception is throw here trying to call the Send method
smtpclient.Send(message);
}

attachment.Dispose();
The exception details are: System.Net.Mail.SmtpException: Cannot get IIS
pickup directory.

From the client computer, I can navigate to the site and do whatever

without
any problems. But, when the site tries to send an e-mail from the server
for the session started by the client in the scenario described above, it
fails.

For the writing to the event log problem
.aspx code-behind code snippet
string exceptionInfo = "Testing WriteToEventLog";
System.Diagnostics.EventLog log = new

System.Diagnostics.EventLog();
log.Log = "Application";
log.Source = "Application";

try
{
log.WriteEntry(exceptionInfo,
System.Diagnostics.EventLogEntryType.Error);
}
finally
{
log.Close();
log.Dispose();
}
The exception details are: System.ComponentModel.Win32Exception: Access
is
denied (Cannot open log for source 'Application'. You may not have
write
access.)

Again, from the client computer, I can navigate to the site and do

whatever
without any problems. But, when the site tries to write to the event log

on
the server for the session started by the client in the scenario
described
above, it fails.

Basically, this is supposed to be an exception notification thing.

Am I doing something wrong? Am I missing something? How can I make the
above scenario work?

Thanks.


May 5 '06 #7

This discussion thread is closed

Replies have been disabled for this discussion.