网络办公助理设计与实现文档格式.docx
- 文档编号:18681526
- 上传时间:2022-12-31
- 格式:DOCX
- 页数:15
- 大小:32.45KB
网络办公助理设计与实现文档格式.docx
《网络办公助理设计与实现文档格式.docx》由会员分享,可在线阅读,更多相关《网络办公助理设计与实现文档格式.docx(15页珍藏版)》请在冰豆网上搜索。
ASP具有很大的灵活性,但效率不是很高,这是因为他使用了解释性的脚本语言,且缺乏面向对象的设计,从而导致ASP代码比较凌乱.
.NET使用一种新技术ASP.NET为Web页面提供了一种集成式的支持.使用ASP.NET,可以编译页面中的代码,这些代码还可以使用.NET高级语言来编写,例如C#或VB.NET
(5)高效的数据访问:
一组.NET组件总称为ADO.NET,提供了对关系数据库和各种数据源的高效访问.这些组件也可以访问文件系统和目录..NET内置了XML支持,可以处理从非Windows平台导入的数据.
(6)代码共享:
.NET引入了程序集的概念,代替了传统的DLL,可以完美无暇地修补代码在应用程序之间的共享方式。
程序集有解决版本冲突的正式系统,程序集的不同版本可以同时存在.
(7)增强的安全性:
每个程序集还可以包含内置的安全信息,这些信息可以准确地指出谁或哪种类型的用户或进程可以调用什么类的哪些方法.这样就可以非常准确地控制程序集使用的方式.
(8)对安装没有任何影响:
有两种类型的程序集,共享程序集和私有程序集.共享程序集是可以用语所有软件的公共库,私有程序集只是用于某个软件.私有程序集功能完备,所以安装的过程非常简单,没有注册表项目,只需把相应的文件放在文件系统的相应文件夹中即可.Web服务的支持:
.NET集成了对开发Web服务的完全支持,用户可以开发出任何类型的应用程序.
(9)VisualStudio.NET:
.NET附带了一个新的开发环境VisualStudio.NET,它还可以很好地与C++,C#,VB.NET和ASP.NET代码合并使用.VisualStudio.NET集成了VisualStudio6环境中各种语言专用的所有最佳功能.
(10)C#:
是使用.NET的一种面向对象的新语言.
网络办公助理简介
基于诸多方便条件,我们将其用于我们的生活中,让我们的生活更适应现代化的发展.在
现在科技在不断更新,技术日新月异的情况下,我们的生活中很多办公模式还停留在原始阶段:
●当同一办公室的两位员工有问题探讨时,还得离开自己的位置交谈,这就会对其他人员造成影响。
●当有资源共享时,只是简单的共享,有着很大的安全隐患。
有些甚至还在使用纸介质。
●当要召开会议时。
既需要专人通知,浪费了人力资源,又需要会议室。
•为了方便办公,解决以上问题,我们开发了一款软件---网络办公助理(NOA)!
•此软件主要有以下优点:
•网络设置
•发送短信
•发布通知
•网上会议
•文件传输
•.NET是MS新推出的一种面向网络,支持各种用户终端的开发平台环境。
它将会带来一种软件革命。
•NET实现“3A”(AnyTime,AnyWhere,AnyDevice”);
即使用不同的开发语言,在不同的目标设备上作.它是一种能够横亘于整个网络,跨越各种操作系统和终端设备之上的操作与平台.
•随着.NET推出的一种新兴的开发语言C#,C#是MS将C和C++改良的产物,他继承了C和C++的优点,去掉的繁琐的东西,如指针(若使用,需指定unsafe关键字),模板,宏等,以及继承了VB的RAD特性,使得开发应用程序的周期大大缩短。
•与JAVA语言相比,C#是MS的产物,它与MS自己的操作系统windows有着更好的亲和能力。
•C#和.NET整个构架更适合客户端和服务端工作的混合。
•JAVA体系主要面向服务器端应用和企业级的应用,而在广泛使用Windows平台的中低端应用上,不如.NET有优势。
•正是因为DOTNET平台和C#开发语言的特点(安全性,兼容性等),因此我们选择用C#语言进行开发。
•这就是--------网络办公助理(NOA)
网络办公助理实现细节
•本软件采用了UDP协议与多点广播,其中多点广播用于发送短信功能;
UDP协议用于发布通知,网上会议和文件传输功能。
此外,本软件还采用了多线程技术,使各个功能都能够并发执行。
网络办公助理的示意图如下:
主页面
启动
文
件
传
输
网
上
会
友
发
布
通
知
送
短
信
络
设
置
版
本
息
办公助理的功能特色:
•本软件设计是从用户的角度进行开发,处处为用户着想。
而且我们充分考虑到了用户可能在操作中出现的各种错误,本软件对一定错误都对用户进行友善的提示。
•由于C#可以支持多国语言,所以本软件可以支持中文,英文,日文,韩文,俄文等多种语言。
•同时本软件已经打包成为一个安装文件,安装十分简便,只需按照所给的提示,就可以进行安装,简单易行。
•一般的网络通信软件,都采用C/S或B/S模式。
本软件则省去了专用服务器;
将服务器所具有的功能嵌入到软件中,使软件本身不仅具有客户端的功能,而且具有服务器的功能。
•传统的通信都采用对等网的形式进行通信.
而本软件不仅有点对点的通信,还有发广播的特点。
传统的通用软件如QQ,MSN等都需要登陆其服务器后,才能进行双方通信,不能保证信息的安全性。
而本软件只是在本局域网内流通,无需登陆服务器,有利于信息的保护。
该软件还有很强的扩展性,可以将很多功能加入进去。
●此软件我们在将来还将如一些语音交流,视频会议等功能添加进来。
●以及还有发送通知的权限,可以设置权限来管理办公人员是否能够发送通知等等。
●在网络会议室内显示在线人员等。
办公助理的用途
•办公助理的用途主要用在办公楼局域网内的计算机上。
–发送短信功能,是用于办公人员在不干扰别人的情况下,与另一个人进行交流。
–发布通知功能,能让主管人员不用在奔波于各个部门之间,只要使用发布通知功能,就可以通知到各个人,十分方便。
–网上会议功能,可以让大家能够随时地在网上进行开会,免除了开会要到会议室开会的麻烦,节约了时间.
–文件传输功能,可以使相邻计算机之间的文件交换变得十分简单,不必在用U盘等来拷贝,极大了方便了办公人员。
•由于DOTNET是MS新推出的战略平台,用C#进行Socket类的编程,难度较高;
而且时间比较仓促,所以本软件还存在不少不足,一些扩展性的功能还没有实现。
以下是部分代码的实现
usingSystem.Reflection;
usingSystem.Runtime.CompilerServices;
//有关程序集的常规信息是通过下列
//属性集控制的。
更改这些属性值可修改与程序集
//关联的信息。
[assembly:
AssemblyTitle("
"
)]
[assembly:
AssemblyDescription("
AssemblyConfiguration("
AssemblyCompany("
AssemblyProduct("
AssemblyCopyright("
AssemblyTrademark("
AssemblyCulture("
)]
//程序集的版本信息包含下列4个值:
//主版本
//次版本
//内部版本号
//修订号
//您可以指定所有值,或使用“修订号”和“内部版本号”的默认值,方法为按如下方式
//使用“*”:
AssemblyVersion("
1.0.*"
//要对程序集进行签名,必须指定要使用的密钥。
有关程序集签名的更多信息,请参考
//Microsoft.NET框架文档。
//使用下面的属性控制用于签名的密钥。
//注意:
//(*)如果未指定密钥,则程序集不会被签名。
//(*)KeyName是指已经安装在计算机上的
//加密服务提供程序(CSP)中的密钥。
KeyFile是指包含
//密钥的文件。
//(*)如果KeyFile和KeyName值都已指定,则
//发生下列处理:
//
(1)如果在CSP中可以找到KeyName,则使用该密钥。
//
(2)如果KeyName不存在而KeyFile存在,则
//KeyFile中的密钥安装到CSP中并且使用该密钥。
//(*)要创建KeyFile,可以使用sn.exe(强名称)实用工具。
//在指定KeyFile时,KeyFile的位置应该相对于
//项目输出目录,即
//%ProjectDirectory%\obj\<
configuration>
。
例如,如果KeyFile位于
//该项目目录,应将AssemblyKeyFile
//属性指定为[assembly:
AssemblyKeyFile("
..\\..\\mykey.snk"
//(*)“延迟签名”是一个高级选项-有关它的更多信息,请参阅Microsoft.NET框架
//文档。
AssemblyDelaySign(false)]
AssemblyKeyName("
IP的设定:
usingSystem;
usingSystem.Drawing;
usingSystem.Collections;
usingSystem.ComponentModel;
usingSystem.Windows.Forms;
namespaceNetStar
{
///<
summary>
///UserIPDlg的摘要说明。
/summary>
publicclassUserIPDlg:
System.Windows.Forms.Form
{
privateSystem.Windows.Forms.ButtonbtnOK;
privateSystem.Windows.Forms.ButtonbtnCancel;
privateSystem.Windows.Forms.TextBoxtxtUserID;
privateSystem.Windows.Forms.TextBoxtxtIPAddress;
privateSystem.Windows.Forms.Labellabel1;
privateSystem.Windows.Forms.Labellabel2;
///<
///必需的设计器变量。
privateSystem.ComponentModel.Containercomponents=null;
publicUserIPDlg()
{
//Windows窗体设计器支持所必需的
InitializeComponent();
//TODO:
在InitializeComponent调用后添加任何构造函数代码
}
///清理所有正在使用的资源。
protectedoverridevoidDispose(booldisposing)
if(disposing)
{
if(components!
=null)
{
components.Dispose();
}
}
base.Dispose(disposing);
#regionWindowsFormDesignergeneratedcode
///设计器支持所需的方法-不要使用代码编辑器修改
///此方法的内容。
privatevoidInitializeComponent()
this.btnOK=newSystem.Windows.Forms.Button();
this.btnCancel=newSystem.Windows.Forms.Button();
this.txtUserID=newSystem.Windows.Forms.TextBox();
this.txtIPAddress=newSystem.Windows.Forms.TextBox();
this.label1=newSystem.Windows.Forms.Label();
this.label2=newSystem.Windows.Forms.Label();
this.SuspendLayout();
//btnOK
this.btnOK.DialogResult=System.Windows.Forms.DialogResult.OK;
this.btnOK.Location=newSystem.Drawing.Point(64,112);
this.btnOK.Name="
btnOK"
;
this.btnOK.TabIndex=4;
this.btnOK.Text="
确认"
//btnCancel
this.btnCancel.DialogResult=System.Windows.Forms.DialogResult.Cancel;
this.btnCancel.Location=newSystem.Drawing.Point(200,112);
this.btnCancel.Name="
btnCancel"
this.btnCancel.TabIndex=5;
this.btnCancel.Text="
放弃"
//txtUserID
this.txtUserID.AcceptsReturn=true;
this.txtUserID.AcceptsTab=true;
this.txtUserID.Location=newSystem.Drawing.Point(88,24);
this.txtUserID.Name="
txtUserID"
this.txtUserID.Size=newSystem.Drawing.Size(200,21);
this.txtUserID.TabIndex=1;
this.txtUserID.Text="
this.txtUserID.KeyDown+=newSystem.Windows.Forms.KeyEventHandler(this.txtUserID_KeyDown);
//txtIPAddress
this.txtIPAddress.AcceptsReturn=true;
this.txtIPAddress.AcceptsTab=true;
this.txtIPAddress.Location=newSystem.Drawing.Point(88,56);
this.txtIPAddress.Name="
txtIPAddress"
this.txtIPAddress.Size=newSystem.Drawing.Size(200,21);
this.txtIPAddress.TabIndex=3;
this.txtIPAddress.Text="
this.txtIPAddress.KeyDown+=newSystem.Windows.Forms.KeyEventHandler(this.txtIPAddress_KeyDown);
//label1
this.label1.AutoSize=true;
this.label1.Location=newSystem.Drawing.Point(8,24);
this.label1.Name="
label1"
this.label1.Size=newSystem.Drawing.Size(66,17);
this.label1.TabIndex=0;
this.label1.Text="
用户标识符"
this.label1.TextAlign=System.Drawing.ContentAlignment.MiddleCenter;
//label2
this.label2.AutoSize=true;
this.label2.Location=newSystem.Drawing.Point(32,56);
this.label2.Name="
label2"
this.label2.Size=newSystem.Drawing.Size(42,17);
this.label2.TabIndex=2;
this.label2.Text="
IP地址"
//UserIPDlg
this.AutoScaleBaseSize=newSystem.Drawing.Size(6,14);
this.CancelButton=this.btnCancel;
this.ClientSize=newSystem.Drawing.Size(306,151);
this.Controls.Add(this.label2);
this.Controls.Add(this.label1);
this.Controls.Add(this.txtIPAddress);
this.Controls.Add(this.txtUserID);
this.Controls.Add(this.btnCancel);
this.Controls.Add(this.btnOK);
this.FormBorderStyle=System.Windows.Forms.FormBorderStyle.FixedDialog;
this.MaximizeBox=false;
this.MinimizeBox=false;
this.Name="
UserIPDlg"
this.StartPosition=System.Windows.Forms.FormStartPosition.CenterParent;
this.Text="
输入用户标识符和IP地址对话框"
this.ResumeLayout(false);
#endregion
privatevoidtxtUserID_KeyDown(objectsender,System.Windows.Forms.KeyEventArgse)
if(e.KeyCode==Keys.Enter)
this.txtIPAddress.Focus();
PrivatevoidtxtIPAddress_KeyDown(objectsender,System.Windows.Forms.KeyEventArgse)
if(e.KeyCode==Keys.Enter)
this.btnOK.PerformClick();
publicstringGetUserID
get{returnthis.txtUserID.Text;
}
publicstringGetIPAddress
get{returnthis.txtIPAddress.Text;
}
usingSystem.Compone
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 网络 办公 助理 设计 实现