中国IT动力,最新最全的IT技术教程
最新100篇 | 推荐100篇 | 专题100篇 | 排行榜 | 搜索 | 在线API文档
首 页 | 程序开发 | 操作系统 | 软件应用 | 图形图象 | 网络应用 | 精文荟萃 | 教育认证 | 硬件维护 | 未整理篇 | 站长教程
ASP JS PHP工程 ASP.NET 网站建设 UML J2EESUN .NET VC VB VFP 网络维护 数据库 DB2 SQL2000 Oracle Mysql
服务器 Win2000 Office C DreamWeaver FireWorks Flash PhotoShop 上网宝典 CorelDraw 协议大全 网络安全 微软认证
硬件维护  CPU  主板  硬盘  内存  显卡  显示器  键盘鼠标  声卡音箱  打印机  机箱电源  BIOS  网卡  C#  Java  Delphi  vs.net2005
  当前位置:> 程序开发 > 编程语言 > .NET > C#
C#积木模块ABC(4)
作者:未知 时间:2004-02-14 12:12 出处:eNet硅谷动力 责编:chinaitpower
              摘要:暂无
13.如何在C#中发送邮件?

要在C#中实现发送邮件的功能,需要使用的工具是Visual C# .NET,涉及到的名称空间有System.Web.Util,集合有System.Web.dll。

具体地,我们可以使用SmtpMail类在C#应用程序中发送邮件。默认状态下,邮件在系统中是排队的,这样可以确保调用程序不会造成网络阻塞。SmtpMail类在System.Web.Util名称空间中定义。在使用SmtpMail之前,需要调用

using System.Web.Util

这个类中只有一个成员函数Send。它负责发送一个邮件信息,无论是一个MailMessage类或者是4个参数变量都可以传递给Send函数。调用Send函数有两种形式:

SmtpMail.Send(txtFrom.Text, txtTo.Text, txtSubject.Text, txtMessage.Text);

或者是(如果不想调用System.Web.Util):

System.Web.Util.Smptmail.Send( fromString, toString, SubjeOfTheMailString, MessageOfTheMailString );

我们可以通过两种途径来调用Send方法:

1、通过将MailMessage作为一个参数来传递:

public static void Send(MailMessage);

这里的MailMessage是一个类。

MailMessage mailMsg = new MailMessage();

mailMsg .From = "from@fromServer.com";

mailMsg .To = "to@toServer.com";

mailMsg .Cc = "cc@ccServer.com"";

mailMsg .Bcc = "bcc@bccServer.com";

mailMsg .Subject = "SubjectOfTheMailString";

mailMsg .Body = "BodyOfTheMailString";

SmtpMail.Send(mailMsg );

2、直接方法

public static void Send(string from , string to, string subject, string messageText);

from=发送者的Email信息,to=接收者的Email信息,subject=Email主题,messageText=Email信息主体。

比如:

SmtpMail.Send("mcb@mindcracker.com", "webmaster@mindcracker.com", "Subject", "Message body");

下面解释如何从控制台获取一个输入值。如果使用的是C++,那么cin和cout就是向控制台读和写的函数。

在文本编辑器中输入这些代码,然后保存为read.cs:

using System;

class ReadStr

{

public static void Main()

{

Console.Write("Enter your name:");

string szName = Console.ReadLine();

Console.WriteLine(" Hey "+ szName);

}

}

然后在命令行编译它,格式是cs read.cs,这将创建一个exe文件read.exe,它与read.cs文件在同一目录下。最后,运行这个exe。



14.如何读取Windows注册表信息?

在介绍如何读取注册表信息前,先解释如何增加注册条目。

1、增加注册表数据

以下文本是实际的注册信息。将这个内容复制并粘贴到一个文本文件中,将其保存扩展名为.reg的文件,然后双击这个文件进行注册表内容的输入操作。

/*Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\TAW\BSE]

"DSN"="TAWReports"

"User"="TAW1"

"Password"="taw1.1"

"Server"="dbserver"

"IP"=""

*/

2、阅读注册数据

2.1 创建两个RegistryKey变量。

2.2 创建一个内含od对象的类,第一个参数为HKEY(主根关键字名),第二个为"",表示本地机器。

2.3 在要阅读信息的地方创建子关键字。

2.4 用RegistryKey类的Getvalue方法来读取某一特定节点关键字信息的数据。在这里,DSN,Server,Password就是节点。

以下代码读取刚才加入到注册表中的注册数据:

namespace CONAPP

{

using System;

using Microsoft.Win32;

public class Class1

{

public Class1()

{

//

// TODO: Add Constructor Logic here

//

}

public static int Main(string[] args)

{

RegistryKey SUBKEY;

RegistryKey TAWKAY = RegistryKey.OpenRemoteBaseKey(Microsoft.Win32.RegistryHive.CurrentUser,"");

string subkey = "Software\\TAW\\BSE";

SUBKEY = TAWKAY.OpenSubKey(subkey);

object dsn = SUBKEY.GetValue("DSN");

object user = SUBKEY.GetValue("user");

object password = SUBKEY.GetValue("password");

object server = SUBKEY.GetValue("server");

return 0;

}

}

}

这里是可下载代码包:http://www.mindcracker.com/csharp/1/read_reg.cs


15.使用系统剪贴板

这里要涉及的集合是System.Winforms.dll,名称空间是System.Winforms。

系统剪贴板是一个提供剪切和粘贴功能的缓冲空间。在C#中,ClipBoard类提供了将数据放在系统剪贴板以及从系统剪贴板恢复数据的方法。如果你曾经使用过C++中的ClipBoard,你应该记得IDataObject,它提供了剪贴板的数据格式。在.NET中,可以使用DataFormat类,它执行IdataObject,为数据传输提供了一种格式独立的结构。有关这方面的细节请看DataFormat类的参考资料。

Clipboard类只有3个成员,它们是剪贴板构造器、GetDataObject和SetDataObject。

16.剪贴板构造器

Clipboad类直接从Object类中派生出来。我们可以在应用程序中直接调用Clipboard类,或者使用剪贴板构造器来创建一个剪贴板实例:

Clipboard = new Clipboard();

甚至可以直接在应用程序中调用Clipboard:

IDataObject iData = System.WinForms.Clipboard.GetDataObject();

SetDataObject方法

我们可以调用SetDataObject方法实现在剪贴板上复制或剪切数据。SetDataObject方法有两个定义:

public static void SetDataObject(Object);

这种方法使用了一个Object类型参数,它可以是任何数据,比如说:

string str = "Mahesh writing data to the Clipboard";

SetDataObject(str);

使用这个方法,就可以把任何类型的数据放在剪贴板上。

另外一种方法接受两个参数:

public static void SetDataObject(Object data, bool copy);

copy这个参数指明应用程序退出后,数据是否应该保留在剪贴板上。

string str = "Mahesh writing data to the Clipboard using Copy bool";

SetDataObject(str, true);

GetDataObject方法

GetDataObject方法负责从剪贴板中恢复当前数据,它将返回IdataObject:

public static IDataObject GetDataObject();

比如说:

IDataObject dtObj = Clipboard.GetDataObject();

现在就可以调用IDataObject的GetFormats来找出剪贴板上的数据格式了,比如说:

private void CutCopyData()

{

Clipboard.SetDataObject(textBox1.SelectedText);

}

private void PasteData()

{

IDataObject iData = Clipboard.GetDataObject();

//Determine whether the data is in a format you can use.

if(iData.GetDataPresent(DataFormats.Text))

{

string str = (String)iData.GetData(DataFormats.Text);

}

}
关闭本页
 
首页 | 投资与合作 | 服务条款 | 隐私政策 | 收藏本站 | 设为首页 | 新用户注册 | 免责声明 | 使用帮助
Copyright ©2005-2008 chinaitpower.com All rights reserved. www.chinaitpower.com 版权所有