当前位置:文档之家› 《白手起家Win32SDK应用程序》(完整版+目录)

《白手起家Win32SDK应用程序》(完整版+目录)

《白手起家Win32SDK应用程序》(完整版+目录)
《白手起家Win32SDK应用程序》(完整版+目录)

《白手起家Win32SDK应用程序》

目录

《白手起家Win32SDK应用程序》 (1)

第一篇、预备知识 (2)

第二篇、创建Win32工程和主函数 (6)

第三篇、增加一个回调函数 (8)

第四篇、注册一个窗口类 (10)

第五篇、利用已注册的窗口类来创建一个窗口 (15)

第六篇、显示你创建的窗口 (19)

第七篇、获取消息及对消息缺省处理 (21)

第八篇、关闭窗口的同时退出程序 (25)

第九篇、窗口标题栏上显示自定义图标(手动编辑代码) (28)

第一篇、预备知识

白云小飞

1 说在前面

由于VC6及MFC的特点,我们许多人从标准C++学习到VC6MFC应用程序的编程学习的过度会有一个很大的夸跃,从而感到非常的吃力。

究其原因之一:MFC类库设计虽然精巧,但我们在使用MFC设计程序时,会发现MFC到处是API函数的影子。MFC并没有象Delphi的VCL类库,VB的控件库一样封装得让人几乎完全不用知道还有Win32API函数及其操作原理,所以要想利用VC6的MFC编程,我认为就一定要先学习如何直接用Win32API函数来编程。对API编程中的一些关键的概念和原理要有一定认识,这样才会有一个比较平滑的过渡。以上就是我写这个系列的初衷。

2 我假设你已有的知识:

这里我假设你已经掌握了如下的知识,如果你在如下方面知识有点不太清楚,那要去补一补罗,否则你看到相关的内容时会有麻烦的。

下面说是我对你知识的假设:

2.1 Windows系统的文件、文件夹、路径的概念

2.2 C语言的基本知识(基本以等级考试二级C语言为准,还要有所扩充)

2.2.1 指针的概念。

2.2.2 函数指针概念。

2.2.3 各种自定义类型(最重要的是struct类型)的概念。

2.2.4 要知道函数的各种参数传递形式(值、地址、引用传递)。

2.2.5 typedef及其应用。

2.2.6 #include及其应用。

2.2.7 十进制、二进制、十六进制。

2.2.8 按位与、或、非运算的实质。

2.2.9 宏定义概念、使用及意义。

(每个人总是学完了C或C++语法后才会开始用VC6进行Windows编程学习的。但是你的基础又是如何呢?这是一个关键。因此我对你的C知识做了具体的假设。)

2.3 会安装VC6.0并安装到一台机上

2.4 VC6编译界面的各组成部分及基本操作(至少会用VC6写控制台程序)。

2.5 VC6调试中至少要会设置断点哦。

(呵呵!我的要求不过份吧!)

3 还必须预备的知识:

以上知识是你看本系列的前提,不过我还要给你预备一下我们再这个阶段学习中会遇到的新东西。

3.1 你将会接触到的Win32API函数库:

以前的DOS下或Windows的控制台程序下,你要在显示器上输出文字,要用printf(),或cout的函数对象来完。但如果你要显示一个图形或图象或为你的程序设计一个图形化的操作界面等等的,那可就惨了,一切都要你自已完成。复杂得很了!(唉!谁叫DOS是字符界面的操作系统呢!)

现在好了,在Windows下编程你可就轻松得多了。因为Windows操作系统都为我们准备好了,它提供给我们多达数千个函数(啊!我要昏倒了。这么多的函数要学。),我们通过这些函数来操作Windows系统提供给我们的各种功能。比如我要在桌面上创建并显示一个窗口。就只要调用几个相关的被称为API的函数,让Windows来帮助我们完成这些事。我们是通过这些函数与Windows系统交互的,所以这些函数被称作Win32应用程序接口函数,简称Win32API 函数。

请不用害怕哟!其实,这么多的函数我们不必都马上一一学过,只要掌握了不多的具有代表性的函数的使用方法,并知道大体API函数都提供了哪些功能就可以了。以后要用时再去查。 Window拥有现成的各种各样的系统功能,供我们的程序调用。那么又是通过什么方式来调用这些系统功能呢?原来,Window还现成提供一个接口,好让我们的程序来使用这些系统功能,这个结口就是Win32API函数了(注:API是应用程序接口的英文缩写)。Win32API函数是我们的应用程序与Windows系统交互的唯一途径。

我并不打算这时就介绍任何一个具体的API函数。你现在只要知道你又要接触一个函数库了——被称为Win32API的函数库,如同你以前所学的C/C++函数库。

哈哈,这真是太好了,我们不用再象DOS一样,自已来完成程序界面的绘制了。我们现在又增加一个全新的函数库,只要调用几个相关API函数,剩下的一切由Windows来完成就可以啦!(当然还有很多其它功能。)

3.2 “新”的数据类型:

学完C、C++之后,我们就可以开始进入VC6的Windows编程学习了。但是在接下来的学习中我们会发现在Windows编程中有许多“新”的数据类型。看下面:

BOOL、BYTE、INT、UINT、WORD、DWORD、FLOAT、CHAR、LPSTR、HINSTANCE、HWND、HMENU、HICON等等。

你看这些大写的数据类型,你以前有见过吗?还有很多哦!我们以后的学习过程中还会见到的。(呵呵!你可要有思想准备了!)

这真是让我们初学者迷惑呀!难道VC6中对C/C++的基本数据类型又有重大的扩充了吗?

其实不用害怕,只是用新瓶装旧酒而已了。在VC6的windef.h头文件中已有这些定义:typedef int BOOL;

typedef unsigned char BYTE;

typedef int INT;

typedef unsigned int UINT;

typedef unsigned short WORD;

typedef unsigned long DWORD;

typedef float FLOAT;

在winnt.h中有

typedef long LONG;

typedef char CHAR;

typedef CHAR *LPSTR, *PSTR;

你看其中(粗体字)CHAR只不过是char 的别名而已,也就是说它们是等价的。只要你包含了相关的头文件,然后你就可以这样申明一个变量:

INT i; //等同于int i;

CHAR a; //等同于char a;

LPSTR pa; //等同于char *pa;

明白了吗?

我想你一定会问:为什么要这样转义呢?我们直接用int 、unsighed int、char等等不就行了吗?我一句两句也说不清,你只要知道,微软这样做一定是要道理的。

哦!还有这些HINSTANCE、HWND、HMENU、HICON我没说呢!今后你还会见到许多这样以H 为开头的数据类型,下面就让我在下一节的“句柄”概念中说给你听。

3.3 “句柄”概念

由windows系统创建出来的或加载的对象(如应用程序进程、线程、窗口、菜单、图标、光标等等的对象),windows系统都会分配给它们一个唯一的标识值,作为这些对象的标志,称之为句柄。我们程序中对这些对象的操作其实就是对其句柄的操作。请记住,句柄就是这些对象的“代号”了。

在编程序中,我们需要用相应的句柄变量来保存这些句柄值,那么用什么类型的句柄变量呢?

就是我们前面提到过的HINSTANCE、HWND。

像其它变量一样(如:int a;)申明句柄变量,如下:

HINSTANCE hst; //hst变量可以保存某个应用程序实例(即一个进程)的句柄。

HWND hwFirst; //hwFrist变量可以保存某个窗体句柄。

HMENU hMenu; //hMenu变量可以保存某个菜单句柄。

HICON hIcon; //hIcon变量可以保存某个图标句柄。

具体的使用让我以后再慢慢与你道来啦。

那么这些类型的实质又是什么?

目前,它们都只是一个int类型(小语:我听说微软也许以后会改变它的类型)。不过不管怎样,你现在只要把HINSTANCE、HWND、HMENU、HICON当做是一个独立的数据类型就可以了。

3.4 消息标识

Windows系统是一个基于消息的系统。这样的机制导致我们的程序与以往DOS下的程序流程会有很大的不同。(这可是很考我们的智慧喽!)

从软件使用者角度看一个Win32窗口程序运行的过程:

1) 我们运行一个应用程序,程序创建并显示一个我们想要的程序窗口。

2) 当我们对窗口进行操作时(如单击、双击、右击、按下键盘、最大化、最小化、关闭窗口等等),程序会完成特定的操作,如:单击最大化、最小化按钮时,窗口会最大化、最小化操作;对窗口中菜单项的选取时,会完成该菜单的相应功能。

从程序员的角度看一个Win32窗口程序运行的过程:

1) 我们运行一个应用程序,程序中我们通过Win32API函数创建并显示一个我们想要的程序窗口。(由我们的程序来调用函数实现)

2) 当我们对窗口进行操作时(如单击、双击、右击、按下键盘、最大化、最小化、关闭窗口等等),窗口会自动产生一系列相应的消息(这是由操作系统实现的)。

3) 具体地讲:当我们改变窗口大小时,会产生WM_SIZE消息;单击关闭按钮关闭窗口时,会产生WM_CLOSE消息;选取某一菜单项时,会产生WM_COMMAND消息;按下键盘时,会产生WM_CHAR、WM_KEYDOWN、WM_KEYUP消息;单击鼠标左键时,会产生WM_LBUTTONUP、WM_LBUTTONDOWN 消息等等。啊,很多很多,我也不必全部罗列出来了。(我说过了,这些都是由操作系统实现的)

4) windows系统会将这些消息排入我们窗口所在线程的消息队列中(你会明白线程是什

么吗?)(也由Window操作系统实现),这样我们的程序才有机会获取并处理这些产生的消息。

5) 我们的程序可以通过Window操作系统提供的API函数来获取这些消息及相关的信息。然后通过我们学过的条件判断语句来判断是什么消息及其相关的操作信息并可编写相应的程

序代码,从而实现对窗口操作的不同反应。(由我们的程序来实现)

看上述的过程描述,你可能要有点的抽象思维能力了。你现在只要有对程序流程有如上的大体认知就可以了。慢慢地我会将上述流程变成确实的程序代码噢!

(等等,还是有个问题:这些WM_CLOSE、WM_COMMAND、WM_CHAR、WM_KEYDOWN、WM_KEYUP、WM_LBUTTONUP、WM_LBUTTONDOWN等等的以WM_开头的消息到底又是什么东西呢?)看VC6的头文件winuser.h中的片段:

……

#define WM_CLOSE 0x0010

……

#define WM_LBUTTONDOWN 0x0201

#define WM_LBUTTONUP 0x0202

#define WM_LBUTTONDBLCLK 0x0203

#define WM_RBUTTONDOWN 0x0204

……

#define WM_KEYDOWN 0x0100

#define WM_KEYUP 0x0101

#define WM_CHAR 0x0102

……

#define WM_INITDIALOG 0x0110

#define WM_COMMAND 0x0111

#define WM_SYSCOMMAND 0x0112

……

哦!这些WM_开头的所谓的消息只不过是一系列16进制整型数值的符号常量而已。每一

个不同的整型数值代表着一个窗口某一操作的标识,因此我们将这些数值或者说以WM_开头的符号常量称之为消息了。

也就说,我们在窗口中作各种不同的操作,Windows系统会产生各种相应的数值。我们就是通过条件语句比较这些数值来判断我们在窗口中所做的操作的。

3.5 资源标识

(你看我没完没了地介绍一个个概念,觉得烦不烦?不用你说,我自已也有点烦了。唉!不过这些似乎是必要的,所以我不得不坚持下去。不过,还好,剩下的不多了。)那么VC6中资源是什么一种概念呢?

我们的程序中可能要用到各种图标(*.ico文件)、各种形状的鼠标(*.cur文件)、各种

图像(*.bmp/*.gif等等)、各种声音(*.wav等)、各种菜单……,这些就是我们这里所说的资

源了。

每一个要用到资源,我们都要给它分配一个编号或名称,作为这个资源的标识。之后我们的程序只是通过这个编号或名称来访问这些资源了。所以这些编号或名称我们称之为资源标识。好了,现在你也只要有了一个大体的映象就可以了,具体的形式和应用让我慢慢再与你说了。

(各位可以提出你的疑问,白云小飞一定会尽力回复的。)

啊!终于结束冗长的概念解说了,看到这里,请先回顾一下我们前面讲的东西。然后嘛——我们可以开工啦!。

第二篇、创建Win32工程和主函数

白云小飞

1 在D:\创建一个空的工程(工程名为MyApp)

要编写一个程序,我们就要首先用VC6应用程序向导创建一个工程,下面我将给你创建一个空工程(也就是没有任何源文件及代码的工程)

1.1 操作:

=>文件->新建…->”工程”标签->位置:”D:\”(你可以设置你想要创建的位置)->工程名:MyApp(你可以自己指定其它名)->选择”创建新的工作空间”->确定->一个空工程->完成

1.2 请查看指定位置下生成的文件:打开D:\MyApp

我们发现,它在D:\下生成了一个MyApp文件夹。

并在MyApp文件夹下生成了几个文件,如下:

MyApp.dsp

MyApp.dsw

MyApp.ncb

MyApp.opt

其中,MyApp.dsp是项目文件和MyApp.dsw是工作区文件,它们是不能删除。

项目文件的作用:生成一个EXE或DLL程序的所有相关源文件、有头文件的位置信息都记录在MyApp.dsp项目文件中。

工作区文件的作用:如果一个复杂的软件工程可能是由多个EXE和多个DLL程序组成,这样每个项目文件的位置信息又记录在MyApp.dsw工作区文件中。

当然,我们的这个工程只有一个EXE程序,所以只有一个项目,这个项目文件MyApp.dsp 也同样要记录在MyApp.dsw中了。

MyApp.ncb和MyApp.opt虽删除后会自动生成,但是还是请不要这样做哦!以后我还会说它们的作用。

我们下次要编辑源程序时,只要打开工作区文件MyApp.dsw就可。

2 在D:\MyApp下创建一个C++源文件,文件名为MyAppMain(当然你也可以自己定义一个文件名),并同时加入到MyApp工程中

2.1 操作:

=>文件->新建…->”文件”标签->选”添加到工程”->选”MyApp”->文件名:MyAppMai n->”位置”默认->确定

2.2 查看指定生成的文件:

可以看到,在D:\MyApp文件夹下生成了MyAppMain.cpp源文件。

3 在MyAppMain.cpp文件中输入一个主函数

3.1 代码如下:

#include

#include

int WINAPI WinMain(HINSTANCE hinstance,

HINSTANCE hprevinstance,

LPSTR lpcmdline,

int ncmdshow)

{

// 将会在这里输入主函数的代码

return 0;

}

3.2 包含必要的头文件:

首先你只要包含下面两个头文件就可,因为它们已经包含了绝大多数的MyApp应用程序必要的头文件。

#include

#include

3.3 主函数名:

函数头定义的书写格式很有趣:

int WINAPI WinMain(HINSTANCE hinstance,

HINSTANCE hprevinstance,

LPSTR lpcmdline,

int ncmdshow)

写成四行,其实没什么,只不过写在一行里太长了,如下:

int WINAPI WinMain(HINSTANCE hinstance, HINSTANCE hprevinstanc

e, LPSTR lpcmdline, int ncmdshow)

并且写成上面的四行反而可读性更强,所以以后你会经常看到这样书写的。

WinMain函数相当于Dos下的main函数,Windows应用程序的主函数不用main而是用Wi nMain。一个程序必有并只能有一个WinMain函数。这个主函数可以写在本工程中的任何一个. cpp文件中。

3.4 参数:

hinstance:类型是HINSTANCE,这种类型就是前面我们可是提到过的应用程序句柄啦。hinst ance的值就是你的当前应用程序进程的句柄。

你的程序每次运行,它的hinstance值是不会一样的。不过我们并不关心hinstance的值是多少。我们只要知道hinstance里的值就是代表本应用程序进程的句柄值就可以了。

我们等一会儿就会用到它了,请看好哦!

hprevinstance:现在已经不用了。我们可以完全不理它。

lpcmdline:这是一个命令行参数。与main(int argc,char **argv)中的命令行参数相似。由于与本题无关,我们也不可完全不理它,对此不再进一步讨论下去。

至于它的数据类型LPSTR,我在前面已经说明了,它其实就是char *类型。

ncmdshow:一个整型值。启动过程中被传递给应用程序,带有如何打开应用程序主窗口的信息。这样,程序的使用者有了一点点的控制应用程序如何启动的能力了。作为一个程序员,如果想忽略它也可以,想使用它也行。哦,那我们这里也先忽略它了。

3.5 返回值:

是一个int值,当我们的程序正常结束退出时,一定要返回一个0值。所以我们的WinMa in函数体内最后有return 0;了

3.6 函数名前的WINAPI是什么?

最后还有一个要说明的——就是WINAPI。这是什么呢?

在VC6的Windef.h头文件中是如下定义的:

#define WINAPI __stdcall

也就是WINAPI等于__stdcall了。

你知道吗,凡是提供给Windows操作系统调用的函数都得是__stdcall调用的。WinMain 主函数当然是由Windows系统调用的,因此定义WinMain前要用__stdcall(即WINAPI)修饰。(你会明白函数调用方式的具体含义吗?不知道也没关系,现在只要记得WINAPI要放在WinM ain前就行了。)

另外说明一点,int 与WINAPI哪个在前哪个在后都是可以的。

好了,我们现在对主函数定义处的各个部分有了必要的了解。你可以休息一会儿,然后回顾一下我们前面操作的过程:

想想我们在本篇中做了哪些事?

生成了哪些文件?

这些文件是什么作用的?

主函数定义的各个部分是什么作用?

如果你已经对上面所做的感到比较清晰,那太好了,Come on!我们继续吧!

第三篇、增加一个回调函数

白云小飞

1 请再创建一个函数。

LRESULT CALLBACK WinProc(HWND hwnd,

UINT msg,

WPARAM wparam,

LPARAM lparam)

{

//这里可以输入响应消息的代码

return 0;

}

此函数人称回调函数也称自定义窗口过程函数。但其实它与我们一般函数无异,你千万不要把这个函数想得太复杂了啊!

记住,函数名WinProc及各参数变量名是可以由你来指定,但是参数类型、个数、顺序、及返回值类型是不能改变的。

那么,这个函数是干什么的啊?

它是一个用来与某窗口关联的函数。当我们在窗口上的每一个操作,都会调用这个函数。这在个函数里,我们可以写上代码来完成我们在窗口上操作的相应功能。

先来看参数部分:

UINT msg :UINT类型不是我们在前面也见过吗?就是unsigned int类型了。每次程序运行时用户在窗口上操作所产生的消息都会通过msg传递进来。msg里保存的值就是我们对窗口操作时产生的消息值(即WM_CLOSE、WM_CHAR、WM_COMMAND、……的值)。

HWIND hwnd :哦!这是我在第一篇中讲过的一个窗口句柄类型的变量。我们可以通过传入的hwnd的值知道msg中的消息对应的是哪一个窗口。

WPARAM wparam , LPARAM lparam :wparam和lparam这两个参数变量的类型分别是WP ARAM和LPARAM。呵呵,我不是说过,你还会见到许多“新”的数据类型的吗?你可要有心理准备噢。

在windef.h中有定义:

typedef UINT WPARAM; //看,WPARAM其实就是unsigned int。

typedef LONG LPARAM; //看,LPARAM其实就是long类型

typedef LONG LRESULT; //LRESULT与LPARAM一样也是长整型long

返回值:类型为LRESULT,看windef.h中的定义可以知道是一个长整型long现在你大体知道这些就行了。至于更进一步的认识,让我们先放到一边去吧!

CALLBACK:这又是什么呢?

在windef.h中的定义如下:

#define CALLBACK __stdcall

#define WINAPI __stdcall

哦!它与WINAPI是一样的,也是__stdcall了,这个WinProc函数是提供给操作系统调用的。我说过操作系统调用的函数都得在前加__stdcall。

(那为什么不直接用__stdcall呢?)

呵呵,这至少可以增加代码的可读性及易改性。

我猜也许你还会继续下一个疑问:那我又如何具体地使用这个函数呢?慢慢来,现在你只要输入到你的.cpp文件中就可以了。

到此为止,我们的MyAppMain.cpp文件代码如下:

//Begin MyAppMain.cpp

#include

#include

LRESULT CALLBACK WinProc(HWND hwnd,

UINT msg,

WPARAM wparam,

LPARAM lparam)

{

//这里可以输入响应消息的代码

return 0;

}

int WINAPI WinMain(HINSTANCE hinstance,

HINSTANCE hprevinstance,

LPSTR lpcmdline,

int ncmdshow)

{

// 将会在这里输入主函数的代码

return 0;

}

//End MyAppMain.cpp

目前为止,这个程序还是一个什么事都没做的Win32应用程序。当然它是不会显示任何窗口的,不过我会一点一点地完善它的。

最后请再认真浏览一下上述代码吧!重点回顾各参数的类型和作用。

第四篇、注册一个窗口类

白云小飞

一创建并显示一个窗口的“遐想”。

? 首先,要显示的窗口在哪里呢?

要想显示你自己的窗口,显然你得事先创建一个自己的窗口。当你想要一个窗口时,Win dow系统才会为你创建窗口。不要时,Window再销毁这个窗口。噢,这是多么相当然的一种机制啊,你说是吧!也就是说我们得先创建一个窗口才能显示。(否则哪里来的窗口给你显示呢?)? 其次,你想创建什么样的窗口呢?

那么,创建什么样的窗口呢?创建前,Window系统可不知道你要的是什么类型的窗口啊(比如标题栏上显示什么图标,鼠标形状是什么,窗口背景颜色等等)。这些类型信息应在你创建前事先告诉Window系统。可以采用这种方法:就是我们事先写一份要创建窗口的类型申请表,提交(注册)给Window系统。然后在创建时,可以让Windows按这个申请表来创建你所要的窗口了。也就是说我们还应该先提交一个申请表,申请成功后再根据这个表创建一个窗口。

依据上述的理由,我假想了以下几个步骤要做:

第一.你得先填写一份你想创建的窗口类的“申请表”。

第二.然后将这“申请表”通过一个API函数提交给Windows系统(即注册到Windows 系统中)。

第三.如果提交(注册)成功,就说明Window系统通过了你的“申请表”,Windows系统中就有了一份你所申请的窗口类(注:这个注册成功的已经注册在系统中的“申请表”我们称之为窗口类)。这样你就可以利用这个申请成功的窗口类,通过一个专门的API函数让Win dows系统创建一个或多个的同一窗口类的窗口。

第四.创建成功后,我们有了窗口。但是,虽然窗口已存在在内存中,并不一定就马上显示在屏幕上(这根据你的意愿了),所以之后的某时你可以用一个API函数来让Windows

系统显示刚才创建的窗口。

Window系统就是这样设计的噢!(呵呵,这样设计不算坏,我可以接受。)以上就是创建一个窗口的大致过程。请记住,在Window系统下你的程序要显示一个你想自定的窗口总是得经历如此步骤的。还要记住一点,我们的代码只是通过调用Window系统所提供的API函数来完成对窗口间接的管理。实际上窗口的管理操作都由Window系统直接完成的。

好,让我们在本篇中先来完成第一、二步骤吧!

二第一步填写一份“申请表”

1 用什么来作为这种“申请表”呢?

我想,C语言中的struct结构体类型的变量来充当这个“申请表”是再合适不过的了。呵呵,真是这样,VC6下早已为我们准备好了这样的“申请表”了。那就是WNDCLASSEX(我们称之为窗口类结构体)。

看看这个WNDCLASSEX结构体的底细吧!

在windef.h中已经有定义:(下面所列的与真实文件中会有点不同,但目前你只要理解我这份就可以了。)

typedef struct tagWNDCLASSEX {

UINT cbSize; //用来保存本结构体的所占字节数

UINT style; //窗口类型风格。

//比如,可设置“若移动窗口宽度时,则刷新整个窗口。

WNDPROC lpfnWndProc; //回调函数指针,用以指向前面那个回调函数。

int cbClsExtra; //略,我们可不必使用它,只要赋值为0就可

int cbWndExtra; //略,同上

HINSTANCE hInstance; //窗口所属的应用程序实例句柄。

HICON hIcon; //大图标,(这个图标会显示在窗口的哪里呢?)

HICON hIconSm; //小图标,(这个又会显示在窗口的哪里呢?)

HCURSOR hCursor; //鼠标句柄,用以指定鼠标移入窗口时的样式

HBRUSH hbrBackground; //用来刷背景颜色的画刷句柄,

//窗口的颜色就会按这个显示。

LPCSTR lpszMenuName; //用来指向菜单资源名称字符串的指针,

//可让你的窗口有一个菜单。

LPCSTR lpszClassName; //用来指向窗口类名字符串的指针

//作为这个窗口类的标识

} WNDCLASSEX

哦!是一个有12个成员变量的struct结构体的类型。(看来我们又要一个一个耐心地搞定它。)

2 创建一个“申请表”

现在就先让我用这个WNDCLASSEX结构体申明一个变量吧!(看粗体字部分)

HWND hWnd;

MSG msg;

WNDCLASSEX winclass; //变量名可由你自己定。

顺便解释一下:

这里我顺便地同时申明了hWnd的窗口句柄变量,用以保存将要创建出来的窗口的句柄。

还申明了一个msg:它的类型是MSG,也是一个已预定义好的结构体,用来保存窗口操作的各种消息信息。

好了好了,以后再说这两个东东啦。

3 填写“申请表”

接下来就到了填写这个“申请表”的时候啦!也就是要对winclass这个结构体变量的各成员赋值。

winclass.cbSize = sizeof (WNDCLASSEX);

这是将本结构体的大小(占字节数)赋值给其成员变量cbSize,一定要这样做哦!好处是:以后Windows系统只要访问cbSize就可知道wndclass的大小了,就不必每次都要用siz eof(WNDCLASSEX)来获取大小。(哦,不错,这真是一个很值得学习的做法)

winclass.stype= CS_VREDRAW | CS_HREDRAW | CS_OWNDC | CS_DBLCLICKS;

我们这里将这四个值同时赋值给成员变量stype。

新问题:CS_VREDRAW、CS_HREDRAW、CS_OWNDC、CS_DBLCLICKS是什么啊!

stype是一个UINT即unsigned int的类型(共32位二进制位)。stype的可能值为如下的组合:

表二.3 窗口类的类型标志

标识描述

CS_HREDRAW 若移动或改变了窗口宽度,则刷新整个窗口

CS_VREDRAW 若移动或改变了窗口高度,则刷新整个窗口

CS_OWNDC 为该类中的每个窗口分配一个单值的设备描述表

CS_DBLCLKS 当用户双击鼠标时向窗口程序发送一个双击的信息,同时,光标位于属于该类的窗口中

CS_PARENTDC 略

CS_NOCLOSE 禁止系统菜单上的关闭命令

CS_SAVEBITS 略

关于更详细的类型标志描述,请自行参考相关书籍。

你可能看完后仍还不能完全明白这些窗口类的类型标志的意思。没有关系,它不妨碍我们对整个程序框架的理解(我们可是要善于把握轻重缓急噢!),现在你只要按我上面赋值就可以了。

还有一个问题:符号“|”是按位或的运算符,即表示CS_VREDRAW、CS_HREDRAW、CS_OWN DC、CS_DBLCLICKS的值同时都赋值给stype

(只能解释到这里了,如果还不太明白“|”的运算,请自己去看关于C语言中“按位或”的相关知识了。)

winclass.lpfnWndProc=WinProc;

lpfnWndProc是一个函数指针(第一篇我已经说过你要对函数指针有一定认识。),它是WNDPROC函数类型,这个函数类型在winuser.h文件中已有定义。如下:

typedef LRESULT (CALLBACK* WNDPROC)(HWND, UINT, WPARAM, LPARAM);

发现没有,WNDPROC类型的格式与我在第三篇中写的那个自定义窗口过程函数的格式是一样的。现在我们将我们的这个函数WinPro的地址赋值给lpfnWndProc函数指针变量。

将前面的那个回调函数WinProc的首地址赋值给成员变量lpfnWndProc。这样这个窗口类就与这个回调函数相关联起来了。

这里,你可能有个疑问:为窗口类指定一个窗口过程函数有什么用处呢?这是Window系统的消息机制的关键。但我现在不想说太多,因为真的现在无法说清楚的。只有等到我将整个程序框架建立起来后,我们再来理解它吧。(唉!我知道这种说了却又没能完全说清楚的情况不应该有,但真的是不得不为之啊!)

wndclass.hInstance = hinstance;

第二篇中可是说过主函数参数中hinstance的值就是本应用程序实例句柄值,我们现在将

这个hinstance的句柄值赋值给wndclass.hInstance。这样,由这个窗口类结构创建的窗口就与本程序实例相关联了。

wndclass.cbClsExtra=0;

wndclass.cbWndExtra =0;

我们现在只是对cbClsExtra和cbWndExtra两个成员简单赋值为0。你现在也不用管它们是做什么的。可以保证绝大多数的程序只要这样就行。

wndclass.hCursor =LoadCursor(NULL, IDC_ARROW);

hCursor是一个鼠标光标句柄变量,用来为这个窗口类指定一个鼠标句柄值(也就是想让这个窗口显示一个什么样的鼠标形状了)。LoadIcon(NULL, IDC_ARROW);这个函数是加载一个光标给hCursor的。你现在只要造就输入就可,其它的以后我再说了。

wndclass.hIcon = LoadIcon(NULL,IDI_APPLICATION);

wndclass.hIconSm = LoadIcon(NULL,IDI_APPLICATION);

hIcon和hIconSm都是图标句柄变量,前一个是用以指定大图标,后一个是用以指定小图标。

hIconSm中设置的图标会显示在你的窗口的标题栏左边。

hIcon中设置的图标是会显示在哪儿啊?不好意思,我真的不知道。如果有人知道,请告之,本人非常感谢!

关于LoadIcon函数,它是加载一个图标给hIcon及hIconSm的。现在你只要造就输入就可以了。

wndclass.lpszMenuName =NULL;

lpszMenuName是一个字符串指针,这是用来指向一个菜单资源名字符串。我们这个窗口暂时不要菜单,所以这里先指定NULL。

wndclass.hbrBackground =(HBRUSH)GetStockObject(WHITE_BRUSH);

hbrBackground是一个画刷句柄变量(类型HBRUSH)(呵呵,又一个新句柄。)。窗口客户区的背景颜色是用这个变量指定的画刷来刷的。看不明白(HBRUSH)GetStockObject(BLACK_BR USH)这个函数没有关系,这里它提供了一个白色画刷给我们。你现在只要造就输入就可以。wndclass.lpszClassName ="WINCLASS1";

lpszClassName是一个字符串指针,它是为这个窗口类(申请表)指定个字符串,这个字符串作为这个窗口类的名称。这里我们指定”WINCLASS1”字符串作为这个窗口类的名称。(要注意一点的是,一个程序中如果申请(注册)了多个窗口类,那么每个窗口类的这个字段值是不能相同的。)

到此为止,我们终于(有点稀里糊涂地)结束了这个结构体各成员变量的赋值了。以上成员变量赋值代码汇总如下:

wndclass.cbSize = sizeof(WNDCLASSEX);

wndclass.cbClsExtra=0;

wndclass.cbWndExtra =0;

wndclass.lpfnWndProc = WinProc;

wndclass.style = CS_VREDRAW | CS_HREDRAW | CS_OWNDC | CS_DBLCLKS;

wndclass.hInstance = hinstance;

wndclass.hCursor =LoadCursor(NULL, IDC_ARROW);

wndclass.hIcon = LoadIcon(NULL,IDI_APPLICATION);

wndclass.hIconSm = LoadIcon(NULL,IDI_APPLICATION);

wndclass.lpszMenuName = NULL;

wndclass.hbrBackground =(HBRUSH) GetStockObject(BLACK_BRUSH);

wndclass.lpszClassName ="WINCLASS1";

好了,我们已经填好了我们想要创建的窗口的“申请表”了,现在可以透一口气了!

然后……再继续,因为我们的任务还没用完成呢!

三第二步提交“申请表”给Window系统

到了提交“申请表”的时候了。我们现在要将wndclass中的各项数据信息提交(注册)到Windows系统中。有一个API函数是专门用来注册窗口类信息的,原型如下:

ATOM WINAPI RegisterClassEx(CONST WNDCLASSEX *);

参数是WNDCLASSEX *类型的指针,只要将要注册的WNDCLASSEX结构体变量地址代入就行。

返回值是一个ATOM类型,其实它也是一个unsigned short类型的别名而已。如果注册不成功则程序返回0值,否则表示注册成功。(注:我们暂时不关心其它返回值的意义。)所以我们注册窗口类的代码可以如下:

if (!RegisterClassEx(&winclass))

return 0; //不成功程序就直接结束了

四最后总括代码

本篇中所增加的全部代码现总括如下(粗体字部分):

WINAPI int WinMain(HINSTANCE hinstance,

HINSTANCE hprevinstance,

LPSTR lpcmdline,

int ncmdshow)

{

HWND hWnd; //窗口句柄变量

MSG msg; //消息结构体变量

WNDCLASSEX wndclass; //窗口类结构体变量

//以下是对wndclass各成员赋值

wndclass.cbSize = sizeof(WNDCLASSEX);

wndclass.cbClsExtra=0;

wndclass.cbWndExtra =0;

wndclass.lpfnWndProc = WinProc;

wndclass.style = CS_VREDRAW | CS_HREDRAW | CS_OWNDC | CS_DBLCLKS;

wndclass.hInstance = hinstance;

wndclass.hCursor =LoadCursor(NULL, IDC_ARROW);

wndclass.hIcon =LoadIcon(NULL,IDI_APPLICATION);

wndclass.hIconSm = LoadIcon(NULL,IDI_APPLICATION) ;

wndclass.lpszMenuName = NULL;

wndclass.hbrBackground =(HBRUSH) GetStockObject(BLACK_BRUSH);

wndclass.lpszClassName =WND_CLS_NAME;

//下面是利用wndcalss结构体的信息注册一个窗口类

if (!RegisterClassEx(&wndclass))

return 0;

//……

return 0;

}

第五篇、利用已注册的窗口类来创建一个窗口

白云小飞

一用CreateWindowEx函数来创建窗口

1 参数及返回值说明:

上篇中我们完成了向Windows系统进行窗口的“申请”工作(即注册一个窗口类)。本篇就是要用这个窗口类来创建一个窗口。

下面这个API函数就是专门用来创建一个窗口的:

HWND WINAPI CreateWindowEx(

DWORD dwExStyle,

LPCSTR lpClassName,

LPCSTR lpWindowName,

DWORD dwStyle,

int X, int Y,

int nWidth, int nHeight,

HWND hWndParent ,

HMENU hMenu,

HINSTANCE hInstance,

LPVOID lpParam);

这是一个拥有一大串参数的函数。(唉!我又要一个个地介绍了。)

DWORD dwExStyle:这是用来指定扩展样式标志,绝大多数情况,我们只要指定为NULL,所以我不想多说。

LPCSTR lpClassName:我们要用前篇中注册的窗口类来完成创建窗口,所以lpCassName 所指字符串值要与前篇中注册时所用的窗口类名值相同(即wndclass.lpszClassName的值)。本例中就是"WINCLASS1"字符串值。

LPCSTR lpWindowName:此指针所指的字符串会显示在标题栏上(即标题栏文字)。

DWORD dwStyle:这是用来指定窗口外观类型的。以下是它可能的值(部分):

表 dwStyle可以设置的值

WS_POPUP弹出式窗口

WS_OVERLAPPED带有标题栏和边界的重叠式窗口。

WS_OVERLAPPEDWINDOW具有WS_OVERLAPPED、WS_CAPTION、WS_SYSMENU、WS_THICK、FRAME、WS_MINIMIZEBOX、WS_MAXIMIZEOBX样式的重叠式窗口

WS_VISIBLE创建之后就立即显示窗口

……(还有很多其它值呢!请自行参看其它参考书)

还记得上篇中注册窗口类时窗口类结构体成员中有一项:

wndclass.style = CS_VREDRAW | CS_HREDRAW | CS_OWNDC | CS_DBLCLKS;

你可不要搞糊涂啦!wndclass.style所指的是针对窗口内在特性的类型,而CreateWind owEx参数中的dwStyle窗口类型是窗口外观的类型。

int X, int Y,:这是指定相对于桌面的窗口左上角位置(坐标)。

int nWidth, int nHeight,:指定窗口的宽度与高度。

(上面这四个参数应该好理解吧!)

HWND hWndParent :父窗口句柄,不明白它的作用吧?现在你只要赋值为NULL就可。

HMENU hMenu:你还记得吗?我们在前篇的窗口类结构体变量赋值中有这么一句: wndcl ass.lpszMenuName =NULL; 它是可以为窗口指定一个菜单的。

CreateWindowEx函数的这个hMenu菜单句柄(这又是一个句柄噢!)也可以为窗口指定一个菜单,它将代替前面的设置。不过我们现在暂时不要菜单,所以也赋值为NULL。

HINSTANCE hInstance:要与wndclass.hInstance值相同,本应用程序的句柄代入这里。

LPVOID lpParam:高级特征,现在我们只要设置为NULL就行。

(噢,好不容易介绍完这些参数了。)

返回值:如果窗口成功创建出来,则返回这个窗口的句柄,如果创建不成功,则返回0值。

2 具体实现代码:

下面我就给出具体的创建窗口代码:

hWnd=CreateWindowEx(NUL L,”WINCLASS1”,

"这是我的第一个窗口",

WS_OVERLAPPEDWINDOW ,

0, 0,

400,400,

NULL,

NULL,

hinstance,

NULL );

if (!hWnd) //这里应该判断是否创建成功

return 0;

3 调试及结果:

程序写到这里似乎窗口就可以创建出来了。那就让我们调试调试?OK,Let’s go!请在 if (!hWnd)

return 0; //设断点

中的return 0处设置一个断点。看看你的程序会不会执行到这个return 0;当创建不成功,则hWnd==0,程序会执行到这个return 0。反之,程序成功地创建了这个窗口。

(哦!我并不知道你是否会用VC6来设置断点并进行调试。

只要光标放在return 0 处按F9就可以设置此处的断点。如果你再按F9一次,则会取消这个断点。

设置完断点后,按F5编译运行这个程序试试。)

矣?不太对劲啊,调试中我们发现hWnd值为0,即说明窗口并没有创建成功。

(在这里请再按F5,可以从断点处继续运行,程序结束了。)

原因是?……

二 CreateWindowEx的一个条件:调用缺省窗口过程DefWindowProc函数

1 在WinProc中增加调用DefWindowProc函数

原因是:我们还要在这个窗口的自定义窗口过程WinProc中增加如下代码(黑体字部分):LRESULT CALLBACK WinProc(HWND hwnd,

UINT msg,

WPARAM wparam,

LPARAM lparam)

{

//……

return DefWindowProc(hwnd, msg, wparam, lparam);

}

真让我疑惑啊!

CreateWindowEx函数创建一个窗口与这个DefWindowProc函数什么关系。

又为什么要把这个函数写在WinProc回调函数里呢?

首先,看DefWindowProc在Winuser.h中的原型定义:

LRESULT CALLBACK DefWindowProc(

HWND hWnd,

UINT Msg,

WPARAM wParam,

LPARAM lParam);

你有没有看出,它的函数格式与我们自定义WinProc回调函数的格式一完全一样的?只不过DefWindowProc是Window系统提供给我们的一个API函数。

那么在整个调用CreateWindowEx函数中到底发生了什么事啊?让我来告诉你吧!

2 原因何在?

从我们的自定义窗口过程WinProc函数说起:

当应用程序运行时,用户对该程序窗口的操作,都会自动产生一系列的消息。比如创建一个窗口会产生WM_CREATE消息;移动窗口会产生WM_MOVE消息;按下键盘时会产生WM_KEYDOW N消息;关闭窗口时会产生WM_CLOSE消息等等。也就是说,在执行CreateWindowEx函数期间会产生若干个消息(先别管都是些什么消息)。

Window系统会将这些由一系列的消息添加到该进程的消息队例中(噢,你可要有一点想象力哟!)。在CreateWindowEx函数中同时会调用我们写的WinProc函数若干次,并把消息的各项信息通过WinPro函数参数传递进来。(我再说一遍:你得有点想象力啊)说白了,就是在执行CreateWindowEx创建窗口过程中会引发对WinProc函数的多次调用。

创建窗口过程中要用到缺省窗口过程函数DefWindowProc:

前面说过,在执行CreateWindowEx创建窗口过程中会引发对WinProc函数的多次调用。嘿嘿,这可不是可有可无的调用啊!在这里,我们要让缺省窗口过程DefWindowProc来完成一些默认的消息处理操作。你不必知道它做了什么事,只要把这一切消息都“扔”给它就行啦!只有让 DefWindowProc函数完成必要的消息处理,CreateWindowEx函数才能全程地完成窗口的创建(否则,嘿嘿!窗口的创建必将失败。)。所以我们添加了调用DefWindowProc的代码。

(DefWindowProc的返回值返回的是对消息处理的结果,我们再将它作为WinProc的返回值。)

3 本篇增加的全部代码

最后,本篇中所增加的全部代码总括如下(黑体部分):

LRESULT CALLBACK WinProc(HWND hwnd,

UINT msg,

WPARAM wparam,

LPARAM lparam)

{

return DefWindowProc(hwnd, msg, wparam, lparam);

}

int WINAPI WinMain(HINSTANCE hinstance,

HINSTANCE hprevinstance,

LPSTR lpcmdline,

int ncmdshow)

{

HWND hWnd;

MSG msg;

WNDCLASSEX wndclass;

//……这里省略了前篇所述的注册窗口类的过程

hWnd=CreateWindowEx(NULL,WND_CLS_NAME,

"这是我的第一个窗口",

WS_OVERLAPPEDWINDOW|WS_VISIBLE ,

CW_USEDEFAULT, 0,

400,400,

NULL,

NULL,

hinstance,

NULL );

if (!hWnd)

return 0;

//……

return 0;

}

4 具体分析

现在现具体地分析一下调用CreateWindowEx函数的过程:

1. 首先从调用CreateWindowEx开始,程序进入了CreateWindowEx函数体内的代码(就是Window系统的代码)。

2. 在此期间,CreateWindowEx会产生若干个消息(我们不用管是什么消息)。

3. 每当一个消息产生后,CreateWindowEx会自动调用我们自己写的WinProc函数,将消息信息传递进来。

4. 这些消息我们自己不作处理而是直接在WinProc调用缺省窗口过程DefWindowProc来

作缺省处理(你不用去管DefWindowProc做了什么),并返回处理结果。

5. 每次WinProc结束后回到CreateWindowEx代码处,CreateWindowEx会根据返回值果进行判断,完成最终的窗口创建。

怪不得嘛!没有调用DefWindowProc这个函数,CreateWindowEx无法完成全部的窗口创建过程,所以最终创建窗口失败了。

5 再调试

很好!现在再按前面讲的调试步骤试试看。

if (!hWnd)

return 0; //这里设断点

程序不再执行这个return 0;了。太好啦!这说明窗口创建成功了。当然并没把窗口显示出来,所以你只看到程序停都不停一下就马上就结束了。

关于窗口的显示我就留到下一篇了。

第六篇、显示你创建的窗口

白云小飞

哈!到了显示窗口的时候啦!

看,下面这个函数就是用来显示窗口的:

BOOL ShowWindow( HWND hWnd, int nCmdShow);

一 ShowWindow函数的参数及返回值

hWnd就是你要显示的窗口的句柄:

nCmdShow是窗口的显示方式,其可能的值如下:

SW_HIDE 隐藏应用程序窗口

SW_SHOWNORMAL 激活并显示窗口,如果窗口被最大化或最不化,系统恢复窗口到原始大小和位置(与SW_RESTORE)

SW_RESTORE 同SW_SHOWNORMAL

SW_NORMAL

SW_SHOWMINIMIZED 激活并最小化窗口

SW_SHOWMAXIMIZED 激活并最大化窗口

SW_SHOW 激活窗口,并按其当前大小和位置显示

SW_MAXINIZE 最大化应用程序窗口

SW_MINIMIZE 最不化应用程序窗口

SW_SHOWNOACTIVATE 按最近大小和位置显示窗口,但不改变激活特性

SW_SHOWMINNOACTIVE 最小化窗口,但不改变其激活特性

SW_SHOWNA 按当前大小各位置显示窗口,但不改变其激活特性

返回值:成功则返回TRUE,不成功则返回FALSE。

二先来两个例子

例一:现假设已经创建了一个窗口,并且该窗口句柄已保存在hWnd变量中。我希望将窗口最大化并使该窗口为当前窗口(即激活该窗口)。请写出ShowWindow函数的具体实现代码。(注:可不必处理它的返回值)

解:ShowWindow(hWnd, SW_SHOWMAXIMIZED);

例二:我希望隐藏一个原来是显示着的窗口。该窗口的句柄在hWnd变量中。应如何写Sh owWindow函数呢?

解:ShowWindow(hWnd, SW_HIDE);

三本系列程序中的实现

(快一点喽,我想马上动手啦!)

好,我们现在继续完善我们的这个Win32SDK程序吧!

具体代码如下(注意粗体字部分):

int WINAPI WinMain(HINSTANCE hinstance,

HINSTANCE hprevinstance,

LPSTR lpcmdline,

int ncmdshow)

{

HWND hWnd;

MSG msg;

WNDCLASSEX wndclass;

//……这里省略了前面所述的注册窗口类的过程

//

hWnd=CreateWindowEx(NULL,WND_CLS_NAME,

"这是我的第一个窗口",

WS_OVERLAPPEDWINDOW|WS_VISIBLE ,

CW_USEDEFAULT, 0,

400,400,

NULL,

NULL,

hinstance,

NULL );

if (!hWnd)

return 0;

ShowWindow(hWnd, ncmdshow); //本篇只添加这一句

return 0; //这里设置一个断点,调试看看

}

一点说明:这里的ncmdshow就是WinMain主函数中的传入参数ncmdshow。当我们通过双击*.exe文件来执行程序时,ncmdshow里的值就会是SW_SHOWNORMAL。

四调试看看

太棒啦!我终于可以亲眼所见我的窗口了!

好,让我们来调试一下吧!看看程序运行后会发生什么。(如果不这样调试而只是运行它,那么还来不及等你看清窗口,程序就会马上结束的。这不用我说明原因吧!)

系统运维项目服务计划方案

XXX系统运维项目服务计划方案 Xxxxxx公司 日期:xxxxxx

目录 XXX系统运维项目服务计划方案 (1) 第1章运维服务计划方案 (3) 1.1运维服务准备 (3) 1.1.1签定必要的协议和约定 (3) 1.1.2人员准备 (3) 1.1.3工具准备 (3) 1.2项目人员组织 (4) 1.2.1人员结构 (4) 1.2.2人员职责与岗位要求 (6) 1.3服务计划 (6) 1.3.1服务时间 (6) 1.3.2进场初始阶段 (7) 1.3.3第一个服务阶段 (8) 1.3.4第二个服务阶段 (8) 1.3.5服务总结和延续阶段 (9)

第1章运维服务计划方案 1.1 运维服务准备 做好运维服务项目的准备工作是项目顺利完成的前提条件。在运维服务项目开始前,xxx将积极做好前期准备工作,在这个阶段,有三个主要步骤: 1.1.1签定必要的协议和约定 我们将配合XX企业,考虑服务外包可能产生的信息安全风险,并签署信息保密协议;同时对项目中涉及的各类软硬件资产、工具的知识产权做出明确规定与声明。 1.1.2人员准备 xxx依据服务方案,培训相应数量、具备相应技术资质的专业服务人员,并向越秀工商提供这些服务人员的: ●身份证明; ●健康证明; ●劳动关系证明; ●保险证明; ●学历和技术专业资质证明; 1.1.3工具准备 依据服务方案,针对企业的IT资产类别、数量等为服务外包项目准备相应

的备机、备件以及工具。 服务工具包括软性工具和硬性工具,软性工具包括服务商开发的各类服务管理软件系统、知识库系统、针对客户方IT资产的文档和驱动程序库等;硬件工具指维修、保养、检测工具及调测仪器等。 1.2 项目人员组织 1.2.1人员结构 根据xxxx信息系统运维要求,xxx派出长期驻场服务人员2人,项目驻场服务组按工作类型分为服务台人员(由硬件维护人员兼任),硬件维护人员。 服务台人员:负责项目服务中客户服务申请受理,已知故障/问题快速解决,客户回访,客户情绪安抚,资产标签制作,数据统计整理,运维项目文档管理以及运维场地整理工作。 硬件软件维护人员日常工作包括硬件设备维护及软件维护。 ?硬件维护管理日常任务: 1)运维服务中的定期硬件巡检、日常维护与保养、定期输入设备消毒除尘、 资产标签张贴、硬件维修、终端网络维护、第三方设备维修管理,备品 备件管理工作。 2)对越秀工商终端用户的设备进行病毒查杀工作,且按照越秀工商要求每 月末提交病毒处理服务统计分析报告。 3)对越秀工商不同处室部门终端人员使用的终端设备,以及各业务系统数

IT 外包 运维 服务 方案 详细完整版

XX信息技术有限公司 IT外包服务方案[键入文档副标题] DADA 2012-11-29

目录 第1章项目概况 (6) 1.1项目背景 (6) 1.2项目目标 (6) 1.3需求分析 (6) 第2章运维服务管理体系建设 (8) 2.1IT服务管理概述 (8) 2.2运维服务管理流程体系 (9) 2.2.1服务支持 (10) 2.2.2服务提供 (16) 2.3运维服务管理规划 (20) 2.3.1第一阶段:服务磨合阶段 (20) 2.3.2第二阶段:主动服务阶段 (23) 2.3.3第三阶段:战略规划阶段 (26) 2.4运维服务质量管理 (26) 2.5建立运维管理规范 (28) 2.5.1运维管理规范概要 (28) 第3章信息系统运行保障方案 (30) 3.1统一服务台建设 (30) 3.2建立文档管理制度 (31) 3.3一般信息化设备及相关软件运维管理 (35) 3.3.1一般信息化设备服务范围 (35) 3.3.2一般信息化设备运维 (35) 3.3.3例行维护流程图 (36)

3.4防(杀)病毒服务 (42) 3.4.1防病毒服务需求 (42) 3.4.2制定合理的防病毒策略和安全管理制度。 (42) 3.4.3客户端防病毒升级软件 (43) 3.4.4防毒组件及时更新 (43) 3.4.5每周防毒系统部署情况统计 (44) 3.4.6每周对产生的病毒事件进行评估 (44) 3.5信息资产巡检及普查服务 (44) 3.5.1主动巡检 (44) 3.5.2信息资产普查 (45) 3.6其它有关说明及要求 (45) 第4章运维服务计划方案 (47) 4.1运维服务准备 (47) 4.1.1签定必要的协议和约定 (47) 4.1.2人员准备 (47) 4.1.3工具准备 (47) 4.2项目人员组织 (48) 4.2.1人员结构 (48) 4.2.2人员职责与岗位要求 (49) 4.3服务计划 (50) 4.3.1服务时间 (50) 4.3.2进场初始阶段 (50) 4.3.3第一个服务阶段 (51) 4.3.4第二个服务阶段 (51) 4.3.5服务总结和延续阶段 (52) 第5章应急服务方案 (53)

系统运维服务计划方案

第1章运维服务计划方案 1.1 运维服务准备 做好运维服务项目的准备工作是项目顺利完成的前提条件。在运维服务项目开始前,越维将积极做好前期准备工作,在这个阶段,有三个主要步骤: 1.1.1签定必要的协议和约定 我们将配合XX企业,考虑服务外包可能产生的信息安全风险,并签署信息保密协议;同时对项目中涉及的各类软硬件资产、工具的知识产权做出明确规定与声明。 1.1.2人员准备 越维依据服务方案,培训相应数量、具备相应技术资质的专业服务人员,并向越秀工商提供这些服务人员的: ●身份证明; ●健康证明; ●劳动关系证明; ●保险证明; ●学历和技术专业资质证明; 1.1.3工具准备 依据服务方案,针对企业的IT资产类别、数量等为服务外包项目准备相应的备机、备件以及工具。 服务工具包括软性工具和硬性工具,软性工具包括服务商开发的各类服务管理软件系统、知识库系统、针对客户方IT资产的文档和驱动程序库等;硬件工

具指维修、保养、检测工具及调测仪器等。 1.2 项目人员组织 1.2.1人员结构 根据越秀工商的信息系统运维要求,越维派出长期驻场服务人员2人,项目驻场服务组按工作类型分为服务台人员(由硬件维护人员兼任),硬件维护人员。 服务台人员:负责项目服务中客户服务申请受理,已知故障/问题快速解决,客户回访,客户情绪安抚,资产标签制作,数据统计整理,运维项目文档管理以及运维场地整理工作。 硬件软件维护人员日常工作包括硬件设备维护及软件维护。 硬件维护管理日常任务: 1)运维服务中的定期硬件巡检、日常维护与保养、定期输入设备消毒除尘、 资产标签张贴、硬件维修、终端网络维护、第三方设备维修管理,备品 备件管理工作。 2)对越秀工商终端用户的设备进行病毒查杀工作,且按照越秀工商要求每 月末提交病毒处理服务统计分析报告。 3)对越秀工商不同处室部门终端人员使用的终端设备,以及各业务系统数 据库形成基线,并进行基线管理以及配置管理,并对基线的调整以及配 置的改变在每月底对XX企业进行报告。 软件维护管理日常任务: 4)操作系统的安装、调试及升级; 5)外设(打印机、扫描仪等设备)的相关驱动程序及软件的安装调试; 6)经XX企业授权进行软件安装、升级并排除软件使用过程中的故障; 7)解决软件冲突造成的系统故障;对计算机进行病毒检测和清除,防止病 毒扩散;

运维服务方案(全)52601

第1章项目概况 ................................................................................... 错误!未定义书签。 1.1项目背景 ........................................................................................ 错误!未定义书签。 1.2项目目标 ........................................................................................ 错误!未定义书签。 1.3需求分析 ........................................................................................ 错误!未定义书签。第2章运维服务管理体系建设 ........................................................... 错误!未定义书签。 2.1IT服务管理概述 ........................................................................... 错误!未定义书签。 2.2运维服务管理流程体系 ................................................................ 错误!未定义书签。 2.2.1服务支持............................................................................... 错误!未定义书签。 2.2.2服务提供............................................................................... 错误!未定义书签。 2.3运维服务管理规划 ........................................................................ 错误!未定义书签。 2.3.1第一阶段:服务磨合阶段................................................... 错误!未定义书签。 2.3.2第二阶段:主动服务阶段................................................... 错误!未定义书签。 2.3.3第三阶段:战略规划阶段................................................... 错误!未定义书签。 2.4运维服务质量管理 ........................................................................ 错误!未定义书签。 2.5建立运维管理规范 ........................................................................ 错误!未定义书签。 2.5.1运维管理规范概要............................................................... 错误!未定义书签。第3章信息系统运行保障方案 (4) 3.1统一服务台建设 ............................................................................ 错误!未定义书签。 3.2建立文档管理制度 ........................................................................ 错误!未定义书签。 3.3一般信息化设备及相关软件运维管理 (4) 3.3.1一般信息化设备服务范围 (4) 3.3.2一般信息化设备运维 (4) 3.3.3例行维护流程图 (5) 3.3.4一般设备服务方案 (6) 3.4防(杀)病毒服务 (8) 3.4.1防病毒服务需求................................................................... 错误!未定义书签。 3.4.2制定合理的防病毒策略和安全管理制度。 (8) 3.4.3客户端防病毒升级软件 (9)

运维服务方案(全)(完整资料).doc

【最新整理,下载后即可编辑】 第1章...................................................................................... 项目概况4 1.1项目背景 (4) 1.2项目目标 (4) 1.3需求分析 (4) 第2章.......................................................... 运维服务管理体系建设6 2.1I T服务管理概述 (6) 2.2运维服务管理流程体系 (7) 2.2.1服务支持 (8) 2.2.2服务提供 (14) 2.3运维服务管理规划 (18) 2.3.1第一阶段:服务磨合阶段 (18) 2.3.2第二阶段:主动服务阶段 (21) 2.3.3第三阶段:战略规划阶段 (24) 2.4运维服务质量管理 (24) 2.5建立运维管理规范 (26) 2.5.1运维管理规范概要 (26) 第3章.......................................................... 信息系统运行保障方案28

3.1统一服务台建设 (28) 3.2建立文档管理制度 (29) 3.3一般信息化设备及相关软件运维管理 (33) 3.3.1一般信息化设备服务范围 (33) 3.3.2一般信息化设备运维 (33) 3.3.3例行维护流程图 (34) 3.3.4一般设备服务方案 (35) 3.4防(杀)病毒服务 (40) 3.4.1防病毒服务需求 (40) 3.4.2制定合理的防病毒策略和安全管理制度。 (40) 3.4.3客户端防病毒升级软件 (41) 3.4.4防毒组件及时更新 (41) 3.4.5每周防毒系统部署情况统计 (42) 3.4.6每周对产生的病毒事件进行评估 (42) 3.5信息资产巡检及普查服务 (42) 3.5.1主动巡检 (42) 3.5.2信息资产普查 (43) 3.6其它有关说明及要求 (43) 第4章................................................................... 运维服务计划方案45 4.1运维服务准备 (45)

ITSS实例文件-运维服务目录-完整版原始版

XXXX公司运维服务目录

修订记录

目录 一、运维服务目录 (1) 1.1基础环境运维服务(0401) (1) 1.2硬件运维服务(0402) (3) 1.3软件运维服务(0403) (6) 1.4安全运维服务(0404) (8) 1.5运维管理服务(0405) (9) 1.6其他运维服务(0499) (9) 二、基础环境运维服务 (12) 2.1例行操作 (12) 2.2响应支持 (46) 2.3优化改善 (78) 2.4调研评估 (86) 三、硬件运维服务 (94) 3.1网络运维服务 (94) 3.1.1例行操作 (94) 3.1.2响应支持 (106) 3.1.3优化改善 (118) 3.1.4调研评估 (121) 3.2主机运维服务 (124) 3.2.1例行操作 (124) 3.2.2响应支持 (130) 3.2.3优化改善 (138) 3.2.4调研评估 (140) 3.3存储运维服务 (142) 3.3.1例行操作 (142) 3.3.2响应支持 (154) 3.3.3优化改善 (166) 3.3.4调研评估 (169) 3.4桌面运维服务 (172) 3.4.1例行操作 (172) 3.4.2响应支持 (178) 3.4.3优化改善 (184) 3.4.4调研评估 (186) 3.5其他硬件运维服务 (188) 3.5.1例行操作 (188) 3.5.2响应支持 (200) 3.5.3优化改善 (212) 3.5.4调研评估 (215) 四、软件运维服务 (218) 4.1基础软件运维服务 (218) 4.1.1例行操作 (218)

运维服务方案(全)(完整资料).doc

【最新整理,下载后即可编辑】 第1章 ...................................... 项目概况 1.1项冃背景 (4) 1.2项目目标 (4) 1.3需求分析 (4) 第2章 ......................... 运维服务管理体系建设6 2.1IT服务管理概述 (6) 2.2运维服务管理流程体系 (7) 221服务支持 (8) 2.2.2服务提供 (14) 2.3运维服务管理规划 (18) 2.3.1第一阶段:服务磨合阶段 (18) 2.3.2第二阶段:主动服务阶段 (21) 2.3.3第三阶段:战略规划阶段 (24) 2.4运维服务质量管理 (24) 2.5建立运维管理规范 (26) 2.5.1运维管理规范概要 (26) 28

第3章.......................... 信息系统运行保障方案3.1统一服务台建设. (28) 3.2建立文档管理制度 (29) 3.3 —般信息化设备及相关软件运维管理 (33) 3.3.1 一般信息化设备服务范围 (33) 3.3.2—般信息化设备运维 (33) 3.3.3例行维护流程图 (34) 3.3.4 一般设备服务方案 (35) 3.4防(杀)病毒服务 (40) 3.4.1防病毒服务需求 (40) 3.4.2制定合理的防病毒策略和安全管理制度。 (40) 3.4.3客户端防病毒升级软件 (41) 344防毒组件及时更新 (41) 345每周防毒系统部署情况统计 (42) 3.4.6每周对产生的病毒事件进行评估 (42) 3.5信息资产巡检及普查服务 (42) 3.5.1主动巡检 (42) 3.5.2信息资产普查 (43) 3.6其它有关说明及要求 (43) 4.1运维服务准备45

系统运维管理-运维服务目录管理规范

运维服务目录管理规范 文件编号: ITSS-运维服务目寻管理规范-V1.0 版本历史 编制人: 审批人:

目录 目录------------------------------------------------------------------------------------------ 2 1. 概述-------------------------------------------------------------------------------------- 3 1.1. 目的 ----------------------------------------------------------------------------- 3 1.2. 范围 ----------------------------------------------------------------------------- 3 2. 角色与职责----------------------------------------------------------------------------- 3 2.1. 公司管理层-------------------------------------------------------------------- 3 2.2. 相关部门----------------------------------------------------------------------- 3 3. 服务目录的管理 ---------------------------------------------------------------------- 4 3.1. 建立服务目录----------------------------------------------------------------- 4 3.2. 监控服务目录----------------------------------------------------------------- 4 3.3. 更新服务目录----------------------------------------------------------------- 4 3.3.1. 定期更新 -------------------------------------------------------------- 4 3.3.2. 不定期更新 ----------------------------------------------------------- 5

运维服务方案

运维服务方案运维服务承诺如我公司中标,我公司作出如下承诺: 1、运维工作人员 1.我司针对本项目成立专门的运维团队和项目管理机构,负责保障服务期内本项目安全、稳定地运行。 2.我司明确运维团队组织、人员、岗位职责、工作流程等,须建立详细的运维保障体系,并提供方案。 3.系统运维团队须具备安全防范系统工程设计、施工和维护能力。 4.系统运维团队须熟练掌握网络安全配置技术,包括网络及安全设备管理、安全域划分、安全策略优化、防火墙配置、VPN管理技术。 5.系统运维团队须具备视频服务管理能力,精通各种视频监控设备与平台,精通视频资源目录服务体系管理,精通各种可视调度系统设备维护。 2、巡检排故工作 1.对重点设备的维护工作,采取分工负责的措施;节假日期间,或有重要的会议及有关活动期间,应专门安排值班,同时作好应急准备工作,必要时安排专人在现场值班,以确保系统正常运行。 2.维护人员应围绕系统功能、系统的各项技术指标及操作运行情况,逐点、逐台、逐项地进行检验,边检边进行记录,并排除发现的故障。 3、用户信息反馈及持续改进工作 1.建立客户意见反馈渠道,收集对维护工作的希望、要求和意见。 2.建立维护工作联系卡,提供公司相关部门负责人及维护工作人员联系电话,保证与客户联系的畅通、维护工作的及时、有效。 3.每半年向用户送交《维护工作客户意见征询表》,收集对维护工作的意见、要求和评议。 4.每维护年度对客户满意度作统计分析,提交书面报告及时修正维护工作方案、方法及纠正维护工作的不足之处,回复客户的意见和要求,提高维护工作质量和服务水平。 4、服务响应要求 (1)运营维护服务要求我司提供服务期内详细的运行维护保障服务方案,包括服务内容、服务形式和服务保障措施。

信息系统运维服务方案

信息系统运维服务 方案

XX局信息化系统运维服务方案 XX局 6月

目录 1概述 .................................................................. 错误!未定义书签。 1.1服务范围和服务内容 ............................. 错误!未定义书签。 1.2服务目标................................................. 错误!未定义书签。2系统现状 .......................................................... 错误!未定义书签。 2.1网络架构................................................. 错误!未定义书签。 2.2设备清单................................................. 错误!未定义书签。 2.3应用系统................................................. 错误!未定义书签。 2.4存储系统................................................. 错误!未定义书签。 2.5备份系统................................................. 错误!未定义书签。3服务方案 .......................................................... 错误!未定义书签。 3.1系统日常维护 ......................................... 错误!未定义书签。 3.2信息系统安全服务 ................................. 错误!未定义书签。 3.3系统设备维修及保养服务...................... 错误!未定义书签。 3.4软件系统升级及维保服务...................... 错误!未定义书签。4服务要求 .......................................................... 错误!未定义书签。 4.1基本要求................................................. 错误!未定义书签。 4.2服务队伍要求 ......................................... 错误!未定义书签。

运维服务完整方案

第1章项目概况 1.1项目背景 近年来为适应业务发展的需求,XX企业进行了大规模的电子商务建设,包括米购桌面PC约300台,打印机约100台,这些应用系统及硬件设备的投入使用极大的推动了XX企业信息化建设的进程。随着越秀工商局对整体IT系统(硬件、软件、网络通讯…)的可用性要求日益提高,系统运行保障和维护管理就成为确保业务系统安全稳定可靠运行的最有力的手段。 XX企业主要有一栋N层的办公环境,现阶段对设备维护主要采用自主维护的方式。由于人力有限,建设任务繁重,中心技术人员在接手新项目及日常工作的同时往往需要做大量的维护工作,不少技术人员长期处于满负荷,严重影响了工作效率。在当前有限的人力物力资源下,为了保障和提高IT 服务质量,XX企业有必要将计算机、外设及网络的运行维护进行外包,派驻2名工程师进行维护,以解决当前IT服务个方面日益增长的需求和有限的提供能力之间的矛盾,提高XX企业办公区域内的软、硬件、业务应用软件的运行维护效率,确保信息系统正常运行。 1.2项目目标 结合XX企业业务工作及信息化建设实际,完善运维管理体系的建设,加强信息系统正常运行保障,“以流程为导向,以服务为核心”提高服务质量水平、转变服务理念、拓宽服务范围、提高服务效率、提升用户服务满意度。 1.3需求分析 本次项目XX企业需求主要包括两个部分, 1、运维管理体系建设要求; 2、信息系统正常运行保障服务。

其中运维管理体系建设应完善服务内控制度即服务质量管理,逐步建立起一套符合XX 企业自身实际的运维管理标准及应用制度;建设IT运营维护管理平台,采用标准的IT运维管理流程,提供准确、详尽、专业的报告制度,通过客观分析运维过中出现的各种障碍及问题,为XX企业信息化建设提供决策依据。 信息系统正常运行保障涵盖了 1、一般信息化设备及软件的运维管理; 2、、防病毒服务; 3、办公区域内设备及软件巡检普查; 4、提供符合XX企业实际的服务响应水平及质量保障; 5、信息化资产管理 第2章运维服务管理体系建设 2.1 IT服务管理概述 现今,随着计算机技术,特别是网络技术的飞速发展,对于许多行政单位,许多企业而言,IT技术越来越深入到核心业务,影响策略制定和企业的发展。从而对IT环境的可靠性,可用性和快速适应性提出了越来越高的要求,与此同时,IT环境(包括软/硬件及相关技术)却变得越来越复杂。因此,对于一个单位而言: 如何把有限的IT资源最有效的作用于核心业务的发展 如何最快地获取专业的支持能力 如何实现对系统的完善管理,提高系统的可靠性和可用性

运维服务完整方案

第1章项目概况 1.1 项目背景 近年来为适应业务发展的需求,XX企业进行了大规模的电子商务建设,包括采购桌面PC约300台,打印机约100台,这些应用系统及硬件设备的投入使用极大的推动了XX企业信息化建设的进程。随着越秀工商局对整体IT系统(硬件、软件、网络通讯…)的可用性要求日益提高,系统运行保障和维护管理就成为确保业务系统安全稳定可靠运行的最有力的手段。 XX企业主要有一栋N层的办公环境,现阶段对设备维护主要采用自主维护的方式。由于人力有限,建设任务繁重,中心技术人员在接手新项目及日常工作的同时往往需要做大量的维护工作,不少技术人员长期处于满负荷,严重影响了工作效率。在当前有限的人力物力资源下,为了保障和提高IT服务质量,XX 企业有必要将计算机、外设及网络的运行维护进行外包,派驻2名工程师进行维护,以解决当前IT服务个方面日益增长的需求和有限的提供能力之间的矛盾,提高XX企业办公区域内的软、硬件、业务应用软件的运行维护效率,确保信息系统正常运行。 1.2 项目目标 结合XX企业业务工作及信息化建设实际,完善运维管理体系的建设,加强信息系统正常运行保障,“以流程为导向,以服务为核心”提高服务质量水平、转变服务理念、拓宽服务范围、提高服务效率、提升用户服务满意度。 1.3 需求分析 本次项目XX企业需求主要包括两个部分, 1、运维管理体系建设要求; 2、信息系统正常运行保障服务。

其中运维管理体系建设应完善服务内控制度即服务质量管理,逐步建立起一套符合XX企业自身实际的运维管理标准及应用制度;建设IT运营维护管理平台,采用标准的IT运维管理流程,提供准确、详尽、专业的报告制度,通过客观分析运维过中出现的各种障碍及问题,为XX企业信息化建设提供决策依据。 信息系统正常运行保障涵盖了 1、一般信息化设备及软件的运维管理; 2、、防病毒服务; 3、办公区域内设备及软件巡检普查; 4、提供符合XX企业实际的服务响应水平及质量保障; 5、信息化资产管理 第2章运维服务管理体系建设 2.1 现今,随着计算机技术,特别是网络技术的飞速发展,对于许多行政单位,许多企业而言,IT技术越来越深入到核心业务,影响策略制定和企业的发展。 从而对IT环境的可靠性,可用性和快速适应性提出了越来越高的要求,与此同时,IT环境(包括软/硬件及相关技术)却变得越来越复杂。因此,对于一个单位而言: ?如何把有限的IT资源最有效的作用于核心业务的发展 ?如何最快地获取专业的支持能力 ?如何实现对系统的完善管理,提高系统的可靠性和可用性 ?如何提高用户的工作效率,增加最终用户满意度 ?如何跟上IT技术的发展,及时更新相关技术 ?如何提高对IT系统利用的灵活性

ITSS-运维服务目录管理规范-V1.0

运维服务目录 管理规范 文件编号:ITSS-运维服务目寻管理规范-V1.0 中博信息技术研究院有限公司

版本历史 编制人:徐圣洁审批人:王文锋

目录 1.概述 (1) 1.1. 目的 (1) 1.2. 范围 (1) 2.角色与职责 (1) 2.1. 公司管理层 (1) 2.2. 相关部门 (1) 3.服务目录的管理 (2) 3.1. 建立服务目录 (2) 3.2. 监控服务目录 (2) 3.3. 更新服务目录 (2) 3.3.1.定期更新 (2) 3.3.2.不定期更新 (3)

1.概述 1.1.目的 服务目录是运维服务能力管理的基础,它描述了公司可以为顾客提供哪些服务,一个良好的服务目录可以帮助用户识别什么服务对他们是有效的,它是SLA的基础。 为此公司要建立准确、有效的服务目标,对服务目录进行优化和管理,保证服务目录的持续、有效。 1.2.范围 适用于XXX息技术研究院组织级服务目录的建立、监控、更新等全过程管理。 2.角色与职责 2.1.公司管理层 ●负责服务目录的策划和管理; ●组织相关部门关键人员分析公司所处的运维内市场环境和技术环境,结合公司自身的业务定位和 能力,评审运行维护服务对象的服务内容与要求等。 2.2.相关部门 ●参与组织级服务目录的制定、评审; ●根据组织级服务目录的实际执行情况,提出改进建议; ●发起组织级服务目录的变更。

3.服务目录的管理 3.1.建立服务目录 公司管理层与相关部门负责人沟通,制订公司的服务目录。服务目录应包括服务产品的详细描述内容,如服务名称、服务简介、服务目标,以及服务对象、服务内容、服务频度、服务时间、交付方式、交付成果等。 服务目录是公司所提供的服务内容的汇总,是公司与顾客签署SLA的依据。 3.2.监控服务目录 公司管理层组织相关部门负责人每年至少一次对服务目录管理情况进行总结与评估,识别出相关的问题,提出改进建议。改进建议来源: 1.运维过程中顾客提出的超过服务目录范围的需求; 2.市场服务需求的变化。 同时,相关部门负责人应该定期收集各业务模块顾客提出的相关建议,分析运维过程中存在的问题,并向公司管理层、战略市场部提出改进建议。 3.3.更新服务目录 3.3.1.定期更新 战略市场部负责收集服务目录的改进信息,并按公司的相关流程进行维护与更新。主要工作如下: 1.收集需求来源 a)在商务专员与顾客沟通服务需求时,商务专员分析服务目录的适用性,提出的改进建议。 b)在立项过程中,相关部门分析服务目录的适用性,提出的改进建议。 c)在签署SLA过程中,项目经理分析服务目录相对顾客的服务需求的适用性,提出改进建议。

运维服务完整方案设计

第1章 第2章 第3章项目概况 3.1项目背景 近年来为适应业务发展的需求,XX企业进行了大规模的电子商务建设,包括采购桌面PC约300台,打印机约100台,这些应用系统及硬件设备的投入使用极大的推动了XX企业信息化建设的进程。随着越秀工商局对整体IT系统(硬件、软件、网络通讯…)的可用性要求日益提高,系统运行保障和维护管理就成为确保业务系统安全稳定可靠运行的最有力的手段。 XX企业主要有一栋N层的办公环境,现阶段对设备维护主要采用自主维护的方式。由于人力有限,建设任务繁重,中心技术人员在接手新项目及日常工作的同时往往需要做大量的维护工作,不少技术人员长期处于满负荷,严重影响了工作效率。在当前有限的人力物力资源下,为了保障和提高IT服务质量,XX企业有必要将计算机、外设及网络的运行维护进行外包,派驻2名工程师进行维护,以解决当前IT服务个方面日益增长的需求和有限的提供能力之间的矛盾,提高XX企业办公区域内的软、硬件、业务应用软件的运行维护效率,确保信息系统正常运行。 3.2项目目标 结合XX企业业务工作及信息化建设实际,完善运维管理体系的建设,加强信息系统正常运行保障,“以流程为导向,以服务为核心”提高服务质量水平、转变服务理念、拓宽服务范围、提高服务效率、提升用户服务满意度。

3.3需求分析 本次项目XX企业需求主要包括两个部分, 1、运维管理体系建设要求; 2、信息系统正常运行保障服务。 其中运维管理体系建设应完善服务内控制度即服务质量管理,逐步建立起一套符合XX企业自身实际的运维管理标准及应用制度;建设IT运营维护管理平台,采用标准的IT运维管理流程,提供准确、详尽、专业的报告制度,通过客观分析运维过中出现的各种障碍及问题,为XX企业信息化建设提供决策依据。 信息系统正常运行保障涵盖了 1、一般信息化设备及软件的运维管理; 2、、防病毒服务; 3、办公区域内设备及软件巡检普查; 4、提供符合XX企业实际的服务响应水平及质量保障; 5、信息化资产管理

2016IT运维服务目录SLA

2016IT运维服务目录SLA

2016年公司服务目录 代码服务类别名称服务子类名称服务子类序号说明 04 运行维护服务 0401 基础环境运维服务对保证信息系统正常运行所必须的电力、空调、消防、安防等基础环境的运维, 如机房电力、消防、安防等系统的例行检查及状态监控、响应支持、故障处理、性 能优化等服务。 按约定周期定期对基础环境运行状态进行检查和分析,完成巡检报告;对客户申 报的基础环境故障提供远程支持,尽快修复故障,提供报告;针对客户当前基础环 境运行情况,给出优化建议并实施,提升性能;根据客户业务发展趋势,评估基础 环境当前及应有性能,提出性能建议。 UPS系统001 日常检查:UPS供电系统运行参数检查;UPS系统各部件健康检查;检查并记录 UPS负载;UPS系统卫生检查;检查记录、数据的备份;日常服务报告。 日常故障处理:设备故障检测;设备故障分析;事件、故障的排除与恢复;故 障硬件设备更换;事件、故障排除、恢复结果确认;故障硬件设备报修(联络第三 方厂商);故障硬件设备送修;故障处理报告;协助/跟踪第三方硬件故障处理;分 析故障原因及预防措施等内容。 定期巡检服务:动力环境监控;测量并记录UPS输入电压电流;测量并记录UPS 输出电压电流,并与之前进行比较;线缆及接头牢固检查;线缆及接头老化情况检 查;电池放电检查;根据检查结果,生成巡检报告。 实时监控:机房UPS负载监控;机房配电系统监控;UPS运行状态实时监控等, 并定期生成日常监控报告。 优化服务:机房动力配电优化;UPS负载优化;机柜供电系统优化等服务内容。 空调002 日常检查:空调运行环境检查;空调运行显示温湿度显示准确性检查;空调运 行状态检查;检查记录、数据的备份;生成日常服务报告 定期巡检:过滤网检查;室外机散热器检查;控制面板参数设置检查;进出风

it运维项目维护服务方案

目录 1公司的服务内容 (2) 1.1 服务目标 (2) 1.2 信息资产统计服务 (2) 1.3 网络、安全系统运维服务 (3) 1.4 主机、存储系统运维服务 (7) 1.5 数据库系统运维服务 (11) 1.6 PC运维服务 (13) 2运维服务流程 (15) 3服务管理制度规范 (17) 3.1 服务时间 (17) 3.2 行为规范 (18) 3.3 现场服务支持规范 (18) 3.4 问题记录规范 (18) 4应急服务响应措施 (20) 4.1 应急基本流程 (20) 4.2 预防措施 (20) 4.3 突发事件应急策略 (21) 5机房管理制度规范 (20) 5.1 机房环境标准 (20) 5.2 机房设备标准 (21) 5.3 机房检查表 (24)

1公司的服务内容 1.1服务目标 公司可为提供的运行维护服务包括,信息系统相关的主机设备、操作系统、数据库和存储设备的运行维护服务,保证用户现有的信息系统的正常运行,降低整体管理成本,提高网络信息系统的整体服务水平。同时根据日常维护的数据和记录,提供用户信息系统的整体建设规划和建议,更好的为用户的信息化发展提供有力的保障。 用户信息系统的组成主要可分为两类:硬件设备和软件系统。硬件设备包括网络设备、安全设备、主机设备、存储设备等;软件设备可分为操作系统软件、典型应用软件(如:数据库软件、PC运维服务等)、业务应用软件等。 公司通过运行维护服务的有效管理来提升用户信息系统的服务效率,协调各业务应用系统的内部运作,改善网络信息系统部门与业务部门的沟通,提高服务质量。结合用户现有的环境、组织结构、IT资源和管理流程的特点,从流程、人员和技术三方面来规划用户的网络信息系统的结构。将用户的运行目标、业务需求与IT服务的相协调一致。 信息系统服务的目标是,对用户现有的信息系统基础资源进行监控和管理,及时掌握网络信息系统资源现状和配置信息,反映信息系统资源的可用性情况和健康状况,创建一个可知可控的IT环境,从而保证用户信息系统的各类业务应用系统的可靠、高效、持续、安全运行。 服务项目范围覆盖的信息系统资源以下方面的关键状态及参数指标: 运行状态、故障情况 配置信息 可用性情况及健康状况性能指标 1.2信息资产统计服务 此项服务为基本服务,包含在运行维护服务中,帮助我们对用户现有的信息资产情况进行了解,更好的提供系统的运行维护服务。 服务内容包括: 硬件设备型号、数量、版本等信息统计记录 软件产品型号、版本和补丁等信息统计记录

服务项目运维合同

技术服务合同 甲方: XXX股份有限公司 乙方:北京XXX 签订地点:北京市 签订日期: 2009 年 5 月 25 日

甲方:XXX股份有限公司(以下简称“甲方”) 乙方:北京XXX(以下简称“乙方”) 甲乙双方就合作,对“XXXX网络服务项目”中有关技术服务相关事宜在平等、自愿、公平的基础上经友好协商达成本合同,并共同信守。 第一部分总则 1.定义 (1)合同:如无特别说明,以下合同特指本合同。 (2)项目:XXXX网络服务项目 (3)不可抗力:指不能预见、不能避免、不可克服的客观情况,例如地震、战争、政府行为等。由于不可抗力的影响,使得一方实际不可能在此情况下履行其协议。不可抗力不包括由于一方的疏忽或故意不遵守良好的工程惯例所发生的事故。 (4)服务内容:系统技术支持、人员的培训、在不影响处理核心的基础上对新增需求的响应。 (5)货币单位:本合同项下一切费用均以人民币为单位进行结算。 2.合同生效 本合同经甲乙双方法定代表人或授权人签字盖章生效。 3.合同修改 除非由双方签订书面修改文件,否则合同不得修改。符合这一程序的修改将构成合同的一部分,并将与合同具有同等的法律效力。 4.告知 任何涉及本合同的通知应以面呈、邮寄或传真方式送达至对方下述地址或传真号码,任何更改该等地址或传真号码必须提前7日以书面形式告知对方。 任何面呈的通知在递交时视为送达;任何以邮资预付的邮寄方式发出的通知在投邮后7日视为送达;任何以传真方式发出的通知在发出时视为送达。

第二部分服务内容及双方责任 1.乙方提供的服务项目 (1)技术支持服务:通过电话热线提供5×8小时的技术支持服务,包括使用与维护指导、技术支持,对客户提出的问题提供满意的解答; (2)对甲方项目设备进行安装、调试; (3)系统维护:根据甲方提供的问题说明,进行错误分析、制定解决方案,并修改存在问题的数据; (4)需求技术服务:根据甲方提出的业务需求进行分析,制定解决方案,通过新增功能或对原功能进行修正的方式提供维护; (5)项目培训:提供对甲方人员的操作培训。 2.甲方责任 (1)在项目实施过程中,甲方指派项目负责人,并组织有关人员参与本项目的组织管理; (2)负责协调乙方在甲方办公地点的安装、调试、测试及培训等一系列工作;(3)应按项目实施进度的规定准备好系统环境并通知乙方; (4)向乙方提供实施本项目所需的数据、文件和其它必要信息;并允许乙方人员为实施本项目而使用上述信息、计算机和其它办公设备; (5)做好必要的系统备份(包括用户文件、数据和程序),如有丢失,甲方应负责重建; (6)按照合同约定时间及金额向乙方支付合同价款。 3.乙方责任 (1)严格按照合同约定的日期及标准完成项目的技术服务内容; (2)根据甲方的实际情况,为甲方提供可行性技术解决方案,并组织乙方相关专业人员进行实施; (3)甲方向乙方提供的内部资料乙方应予以保密,乙方承诺不向任何第三方泄露甲方的业务机密; (4)为甲方业务人员提供相关培训,甲乙双方有责任共同保证培训效果,受训人员应当达到正常使用的标准,保证实施效果。 4.技术服务的期限

运维服务方案(全)

第1章项目概况 (4) 1.1项目背景 (4) 1.2项目目标 (4) 1.3需求分析 (4) 第2章运维服务管理体系建设 (6) 2.1IT服务管理概述 (6) 2.2运维服务管理流程体系 (7) 2.2.1服务支持 (8) 2.2.2服务提供 (14) 2.3运维服务管理规划 (18) 2.3.1第一阶段:服务磨合阶段 (18) 2.3.2第二阶段:主动服务阶段 (21) 2.3.3第三阶段:战略规划阶段 (24) 2.4运维服务质量管理 (24) 2.5建立运维管理规范 (26) 2.5.1运维管理规范概要 (26) 第3章信息系统运行保障方案 (28) 3.1统一服务台建设 (28) 3.2建立文档管理制度 (29) 3.3一般信息化设备及相关软件运维管理 (33) 3.3.1一般信息化设备服务范围 (33) 3.3.2一般信息化设备运维 (33) 3.3.3例行维护流程图 (34) 3.3.4一般设备服务方案 (35) 3.4防(杀)病毒服务 (40) 3.4.1防病毒服务需求 (40) 3.4.2制定合理的防病毒策略和安全管理制度。 (40) 3.4.3客户端防病毒升级软件 (41)

3.4.5每周防毒系统部署情况统计 (42) 3.4.6每周对产生的病毒事件进行评估 (42) 3.5信息资产巡检及普查服务 (42) 3.5.1主动巡检 (42) 3.5.2信息资产普查 (43) 3.6其它有关说明及要求 (43) 第4章运维服务计划方案 (45) 4.1运维服务准备 (45) 4.1.1签定必要的协议和约定 (45) 4.1.2人员准备 (45) 4.1.3工具准备 (45) 4.2项目人员组织 (46) 4.2.1人员结构 (46) 4.2.2人员职责与岗位要求 (47) 4.3服务计划 (48) 4.3.1服务时间 (48) 4.3.2进场初始阶段 (48) 4.3.3第一个服务阶段 (49) 4.3.4第二个服务阶段 (49) 4.3.5服务总结和延续阶段 (50) 第5章应急服务方案 (51) 5.1灾难应急措施 (51) 5.1.1应急措施体制图与总则 (51) 5.1.2大型灾难紧急行动方案 (52) 5.2运行服务应急方案 (55) 5.2.1启动应急流程 (55) 5.2.2成立应急小组 (58) 5.2.3应急处理过程 (58)

相关主题
文本预览
相关文档 最新文档