我使用Windows Phone 8+电子邮件撰写任务有一种奇怪的情况。即使显示了电子邮件选择,例如在选择Outlook之后它会崩溃并返回我的应用程序,而不发送邮件。
EmailComposeTask email = new EmailComposeTask();
email.To = "";
email.Subject = DateTime.Now + " log from" + username;
try
{
txt1 = await HelperClasses.StorageInteraction.ReadFile(HelperClasses.LocalUser.path);
txt2 = await HelperClasses.StorageInteraction.ReadFile(HelperClasses.LocalUser.path+"1");
email.Body = txt1 + "\r" + txt2;
}
catch (System.IO.FileNotFoundException ex)
{
Debug.WriteLine("File not found");
}
if (email.Body.Length > 28000)
{
email.Body = email.Body.Substring(email.Body.Length - 28000);
Debug.WriteLine("Email body after trimming it : " + email.Body);
}
email.Show();
所以问题是,我是否通过电子邮件导致Outlook崩溃。我提供了什么?或者它只是Windows Phone OS /电子邮件应用程序的故障?
ps:我从stackoverflow上的其他人那里读到他们可以发送电子邮件。身高可达63K。我是在引起这个吗?
答案 0 :(得分:0)
你确定HelperClasses.LocalUser.path +" 1"是正确的。记住1将在文件扩展名后添加。因此,如果您的第一个文本文件(或任何其他文件类型)是log.txt,那么第二个文本文件将是log.txt1,它是无效的。因此,email.Body将无效。即使出现错误(由catch块处理),您也在使用email.Show()。因此,电子邮件在加载时崩溃。如果问题是我上面描述的,那么请尝试以下代码
String ext=".txt"; \\ replace it with your file's extension
String path2=HelperClasses.LocalUser.path.ToString().SubString(0,HelperClasses.LocalUser.path.ToString()-ext.length)+"1"+ext;