0

我尝试使用以下代码在 Windows Store App 中发送电子邮件:

    var mailto = new Uri("mailto:?to=recipient@example.com&subject=The subject of an email&body=Hello from a Windows 8 Metro app.");
await Windows.System.Launcher.LaunchUriAsync(mailto);

它没有显示任何错误,但我没有收到任何电子邮件。上面的代码有什么问题?

4

2 回答 2

2

正确的方法是使用共享。您的应用程序应该创建一个 HTML 文档或文本并共享它。用户将从 Share 魅力中选择 Mail,HTML/Text 将成为电子邮件的正文。

请参阅此处了解更多信息...

这里

于 2013-01-01T12:54:33.820 回答
0

您的代码应该使用链接中的所有信息打开默认邮件客户端(即处理mailto:协议的默认应用程序)。如果没有,您可能没有正确设置默认应用程序。这首先发生在我身上,在我选择Mail应用程序来处理这个协议之前。

尽管如此,您可能不希望您的用户获得这样的体验,至少有两个原因:

  • 您的代码取决于用户机器的配置方式。你不能确定当它被执行时会发生什么。
  • 即使Mail是默认应用程序,您的代码也只会创建一个新草稿,用户必须自己发送。

根据您想要实现的目标,我会考虑以下方法之一:

  • 正如 Azzy 已经建议的那样,对于交互式发送电子邮件,共享是 Windows 应用商店应用程序中的正确方法。
  • 如果您希望以非交互方式发送电子邮件,您应该创建一个 Web 服务并在应用调用它时从那里发送电子邮件。
于 2013-01-01T13:44:54.960 回答