使用Outlook web access 发邮件的时候,正文部分无法输入文字

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用Outlook web access 发邮件的时候,正文部分无法输入文字相关的知识,希望对你有一定的参考价值。

我的系统是VISTA,使用outlook web access发邮件时,正文部分无法输入文字,出现"X"
有人说去下载补丁,但是一执行就说C盘硬碟空间不足,又不能改路径
web access又找不到可以设定的地方,请问要如何解决,谢谢
下载KB911829,KB924334这两个补丁,执行后会说"存放空间不足,无法处理此命令"
请问要如何解决,它又无法改路径

打补丁即可,提供vista下的解决办法,希望对你有帮助
[下载]Windows vista及IE 7.0用户访问OWA异常补丁
windows vista或是Internet Explorer 7.0用户在访问Exchange Server 2003的Outlook Web Access 的时候有可能出现异常情况,请下载KB911829或KB924334.

1.Windows vista(KB911829)补丁
在 Microsoft Windows Vista Beta 2 发行版中,Internet Explorer 浏览器中删除了 Dynamic html Editing ActiveX 控件。因此,缺少了 Microsoft Exchange Outlook Web Access 依赖的功能。此更新程序替代了 Microsoft Exchange 服务器上取消的该项功能,因此 Microsoft Exchange Outlook Web Access 继续正常工作。

2.Internet Explorer 7.0(KB924334)补丁
在运行 Internet Explorer 7.0 的客户端上使用 S/MIME 控件撰写邮件时,Outlook Web Access (OWA) 表单将停止响应,并停止访问运行 Exchange Server 2003 的邮件服务器,此更新将会很好的解决这个问题。

3.另一EXchange Server (KB912939) 补丁
此更新修改了 Exchange Server 2003 的 Outlook Web Access 中的“安全 HTML”筛选,以便允许工作流应用程序代码在电子邮件表单或附件中使用 HTML POST 方法。

可能是我操作的原因,这个方法对我的故障没有效果。后仔细分析,其插件故障应该是确定的。不过因为从新安装这个插件后还是不行可能是应为这个插件正在运行无法覆盖造成的。
我的解决方法:
1、进入owa界面点击“选项”标签。在右侧窗口找到“邮件安全性”一栏有个“单击此处安装最新版本的 S/MIME 控件。当文件下载对话框出现时,请选择“打开”。”点击下面的“从新安装”按钮(因为之前安装过所以是这个按钮,如果之前没有安装过会显示安装)。弹出下载窗口,下载这个插件到本地路径。
2、退出IE7,右键IE7图标选择“Internet属性”,弹出窗口选择“高级”标签,点击重置按钮。等待它完成,并在“常规”选项卡删除历史记录,“全部删除”。
3、启动IE7进入owa界面这时会提示你安装插件,点击并允许安装。
这样在你看你的新建右键的正文部分是不是可以输入了。
参考技术A 请问如何解决的,我这也是显示存储空间不足,无法执行此命令

c#代码怎么通过outlook发邮件

当系统出现某个条件,怎样让系统自动派信给系统管理员?举例:某个报修系统用户报修后超过一定时间管理员未处理则系统自动发mail提醒管理员(用的是outlook)...有这方面经验的朋友请指点下.
发送邮件到企业邮箱系统(通过outlook收发的)

c#在使用outlook提供的一些API时,需要将outlook相关的com引用到项目中。 具体方法就是用vs打开工程后,在工程上添加引用,在com选项卡上,选择Microsoft Outlook 12.0 Object Library,如果安装的不是outlook2007,则对应com的版本不一样。注意下面描述的方法是在命令行模式或者winform模式下的,不是web模式下的。
1.给outlook添加任务,代码如下:
/// <summary>
/// 给outlook添加一个新的任务
/// </summary>
/// <param name="subject">新任务标题</param>
/// <param name="body">新任务正文</param>
/// <param name="dueDate">新任务到期时间</param>
/// <param name="importance">新任务优先级</param>
public static void AddNewTask(string subject, string body, DateTime dueDate, OlImportance importance)

try

Application outLookApp = new Application();
TaskItem newTask = (TaskItem)outLookApp.CreateItem(OlItemType.olTaskItem);
newTask.Body = body;
newTask.Subject = subject;
newTask.Importance = importance;
newTask.DueDate = dueDate;
newTask.Save();

catch(System.Exception e)

throw e;


2.最简单的发送邮件。
下面是一个最简单的发送邮件的例子,在该例子中,只能给一个邮箱地址发邮件,而且还不能够添加附件。代码如下:

/// <summary>
/// 一个最简单的发送邮件的例子。同步方式。只支持发送到一个地址,而且没有附件。
/// </summary>
/// <param name="server">smtp服务器地址</param>
/// <param name="from">发送者邮箱</param>
/// <param name="to">接收者邮箱</param>
/// <param name="subject">主题</param>
/// <param name="body">正文</param>
/// <param name="isHtml">正文是否以html形式展现</param>
public static void SimpleSeedMail(string server, string from, string to, string subject, string body, bool isHtml)

try

MailMessage message = new MailMessage(from, to, subject, body);
message.IsBodyHtml = isHtml;
SmtpClient client = new SmtpClient(server);
client.Credentials = new NetworkCredential("发送者邮箱用户名(即@前面的东东)","发送者邮箱密码");
client.Send(message);

catch (System.Exception e)

throw e;


3.向多人发邮件,并支持发送多个附件。
代码如下:

/// <summary>
/// 支持向多人发邮件,并支持多个附件的一个发送邮件的例子。
/// </summary>
/// <param name="server">smtp服务器地址</param>
/// <param name="from">发送者邮箱</param>
/// <param name="to">接收者邮箱,多个接收者以;隔开</param>
/// <param name="subject">邮件主题</param>
/// <param name="body">邮件正文</param>
/// <param name="mailAttach">附件</param>
/// <param name="isHtml">邮件正文是否需要以html的方式展现</param>
public static void MultiSendEmail(string server, string from, string to, string subject, string body, ArrayList mailAttach, bool isHtml)

MailMessage eMail = new MailMessage();
SmtpClient eClient = new SmtpClient(server);
eClient.Credentials = new NetworkCredential("发送者邮箱用户名(即@前面的东东)", "发送者邮箱密码");

eMail.Subject = subject;
eMail.SubjectEncoding = Encoding.UTF8;

eMail.Body = body;
eMail.BodyEncoding = Encoding.UTF8;

eMail.From = new MailAddress(from);

string[] arrMailAddr;

try

#region 添加多个收件人
eMail.To.Clear();
if (!string.IsNullOrEmpty(to))

arrMailAddr = to.Split(';');
foreach (string strTo in arrMailAddr)

if (!string.IsNullOrEmpty(strTo))

eMail.To.Add(strTo);



#endregion
#region 添加多个附件
eMail.Attachments.Clear();
if (mailAttach != null)

for (int i = 0; i < mailAttach.Count; i++)

if (!string.IsNullOrEmpty(mailAttach[i].ToString()))

eMail.Attachments.Add(new System.Net.Mail.Attachment(mailAttach[i].ToString()));



#endregion
#region 发送邮件
eClient.Send(eMail);
#endregion

catch (System.Exception e)

throw e;


//end of method
4.异步发送邮件的一个例子。以163的smtp服务器为例。
代码如下:

using System;
using System.Net;
using System.Net.Mail;
using System.Net.Mime;
using System.Threading;
using System.ComponentModel;
namespace Examples.SmptExamples.Async

public class SimpleAsynchronousExample

static bool mailSent = false;

private static void SendCompletedCallback(object sender, AsyncCompletedEventArgs e)

// Get the unique identifier for this asynchronous operation.
String token = (string)e.UserState;

if (e.Cancelled)

Console.WriteLine("[0] Send canceled.", token);

if (e.Error != null)

Console.WriteLine("[0] 1", token, e.Error.ToString());

else

Console.WriteLine("Message sent.");

mailSent = true;


public static void Main(string[] args)

SmtpClient client = new SmtpClient("smtp.163.com");
client.Credentials = client.Credentials = new NetworkCredential("发送者邮箱用户名", "发送者邮箱密码");

MailAddress from = new MailAddress("softwarezxj@163.com");
MailAddress to = new MailAddress("lastBeachhead@gmail.com");
MailMessage message = new MailMessage(from, to);
message.Body = "这是一封测试异步发送邮件的邮件 ";
message.BodyEncoding = System.Text.Encoding.UTF8;
message.Subject = "测试异步发邮件";
message.SubjectEncoding = System.Text.Encoding.UTF8;

// 设置回调函数
client.SendCompleted += new SendCompletedEventHandler(SendCompletedCallback);
// SendAsync方法的第二个参数可以是任何对象,这里使用一个字符串标识本次发送
//传入的该对象可以在邮件发送结束触发的回调函数中访问到。
string userState = "test message1";
client.SendAsync(message, userState);
Console.WriteLine("Sending message... press c to cancel mail. Press any other key to exit.");
string answer = Console.ReadLine();

if (answer.StartsWith("c") && mailSent == false)

client.SendAsyncCancel();

//清理工作
message.Dispose();
Console.WriteLine("Goodbye.");
Console.ReadLine();


参考技术A 给你一段代码来发邮件吧。

string UserName="你的邮件账户";
string Password="@@@@@";
string MailServer="smtp.sina.com.cn";
int smtpPort=25;
System.Net.Mail.SmtpClient sc = new SmtpClient(MailServer, smtpPort);
NetworkCredential nc = new NetworkCredential(UserName, Password);
sc.Credentials = nc;

MailMessage MyEmailMessage=new MailMessage();
MyEmailMessage.From = new MailAddress(UserName);
MyEmailMessage.To.Add(new MailAddress("aldsja@sina.com.cn"));
MyEmailMessage.Subject = "邮件发送的一个简单例子";
MyEmailMessage.Body = "猫王呼叫耗子,收到请回答!!!\n";
MyEmailMessage.IsBodyHtml = false;
MyEmailMessage.Priority = MailPriority.High;
sc.Send(MyEmailMessage);//发送电子邮件
Console.WriteLine("Mail send finished.");

无论什么邮件系统,都应该支持smtp邮件协议,就可以用smtp客户端来发邮件。
需要进入的命名空间是:
using System.Net;
using System.Net.Mail;追问

有個邏輯上的斷點請教下。這個mail功能應該是在項目的代碼裏,而所有的功能都是通過頁面被瀏覽者訪問才能成功執行;假設沒人訪問(頁面代碼不被執行)mail功能怎麽通過時間判斷發信???

追答

那就需要一个触发的机制了,你看看使用定时器好还是用计划任务好。
需要定时器就用 System.Timers.Timer t1 = new System.Timers.Timer();
处理起来也简单,网上其实有大量的例子,这里写一个简单的。
//设置
t1.AutoReset = true;
t1.Interval = 600000;
t1.Start();
//设置时间到达时触发的事件
t1.Elapsed += new System.Timers.ElapsedEventHandler(t1_Elapsed);
//触发的事件
void t1_Elapsed(object sender, System.Timers.ElapsedEventArgs e)

//ToDo: 写你要的逻辑,你可以把判断时间点和发送邮件的逻辑写到里面。

本回答被提问者和网友采纳

以上是关于使用Outlook web access 发邮件的时候,正文部分无法输入文字的主要内容,如果未能解决你的问题,请参考以下文章

c#代码怎么通过outlook发邮件

使用不同的 Outlook 电子邮件地址从 Access 发送电子邮件

使用 Access 2007 中的电子邮件地址在 Outlook 中发送电子邮件

用python调用outlook发邮件的问题

怎么用outlook发邮件

如何在Java ee项目中如何调用outlook发邮件