如何用 Delphi 创建系统服务程序

如何用 Delphi 创建系统服务程序,第1张

(1)不用登陆进系统即可运行

(2)具有SYSTEM特权所以你在进程管理器里面是无法结束它的

笔者在2003年为一公司开发机顶盒项目的时候,曾经写过课件上传和媒体服务,下面就介绍一下如何用Delphi7创建一个Service程序

运行Delphi7,选择菜单File-->New-->Other--->Service Application将生成一个服务程序的框架将工程保存为ServiceDemodpr和Unit_Mainpas,然后回到主框架我们注意到,Service有几个属性其中以下几个是我们比较常用的:

数据库系统概述

数据系统为我们提供了一种把与我们的工作和生活紧密相关的信息集合在一起的方法 它还提供了在某个集中的地方存储和维护这些信息的方法 数据库系统主要由三大部分组成 数据库管理系统(DBMS:它是专门负责组织和管理数据信息的程序) 数据库应用程序(它使我们能够获取 显示和更新由DBMS存储的数据) 数据库(按一定结构组织在一起的相关数据的集合)

一般来说 DBMS和数据库应用程序都驻留在同一台计算机上并在同一台计算机上运行 很多情况下两者甚至结合在同一个程序中 以前使用的大多数数据库系统都是用这种方法设计的 但是随着DBMS技术的发展 目前的数据库系统正向客户/服务器模式发展 客户/服务器数据库将DBMS和数据库应用程序分开 从而提高了数据库系统的处理能力 数据库应用程序运行在一个或多个用户工作站(客户机)上 并且通过网络与运行在其它计算机上(服务器)的一个或多个DBMS进行通信

下面是数据库系统中一些概念和述语

数据库管理系统(DBMS)

数据库管理系统(DBMS)是用于描述 管理和维护数据库的程序系统 是数据库系统的核心组成部分 它建立在 *** 作系统的基础上 对数据库进行统一的管理和控制 其主要功能有

描述数据库 描述数据库的逻辑结构 存储结构 语义信息和保密要求等

管理数据库 控制整个数据库系统的运行 控制用户的并发性访问 检验数据的安全 保密与完整性 执行数据检索 插入 删除 修改等 *** 作

维护数据库 控制数据库初始数据的装入 记录工作日志 监视数据库性能 修改更新数据库 重新组织数据库 恢复出现故障的数据库

数据通信 :组织数据的传输

DBMS主要有四种类型 文件管理系统 层次数据库系统 网状数据库系统和关系数据库系统 因为目前关系数据库系统应用最为广泛 所以我们重点对关系数据库系统中的几个概念进行介绍

关系数据库(Relational Database) 一个关系数据库是由若干表组成 在Delphi中 数据库概念对应到物理文件上是有一些不同的 对于dBASE FoxPro Paradox这三种数据库系统 数据库对应于某一个子目录 而其它类型如MS Access Btrieve则是指某个文件 这是因为前者的表为单独的文件 而后者的表是聚集在一个数据库文件中的

表(Table) 一个表就是一组相关的数据按行排列 象一张表格一样 比如一个班所有学生的期末考试成绩 存在一个表中 每一行对应一名学生 在这一行中 包括学生的学号 姓名以及各门课程的成绩

字段(Field) 在表中 每一列称为一个字段 每一个字段都有相应的描述信息 如数据类型 数据宽度等

记录(Record) 在表中 每一行称为一条记录

索引(Index) 为了加快访问数据库的速度 许多数据库都使用索引

数据库应用程序

DBMS中存储了大量的数据信息 其目的是为用户提供数据信息服务 而数据库应用程序正是与DBMS进行通信 并访问DBMS中的数据 它是DBMS实现其对外提供数据信息服务这一目的的唯一途径 简单地说 数据库应用程序是一个允许用户插入 修改 删除并报告数据库中的数据的计算机程序 数据库应用程序在传统上是由程序员用一种或多种通用或专用的程序设计语言编写的 但是近年来出现了多种面向用户的数据库应用程序开发工具 这些工具可以简化使用DBMS的过程 并且不需要专门编程 Delphi就是一种强有力的数据库应用程序开发工具

用来生成数据库应用程序的语言主要分为三大类型

过程化语言

标准的计算机程序设计语言如Pascal Basic和C都是过程化语言 这些语言可以通过某种 应用程序接口 (API)来创建数据库应用程序 这种API由一组标准的函数(或调用)组成 这些函数和调用则扩展了语言的功能 使之能访问数据库中的数据 当程序设计人员用过程化语言创建数据库应用时 必须把应用的代码编写成一系列的过程 每个过程执行应用的某一部分的工作 如一个过程查询数据库 而另一过程更新数据库中的数据 然后不同的过程通过其他的用户界面过程(例如菜单系统)联系在一起 并且在应用中的适当地方运行

上述这些过程化语言一般用来创建非数据库应用程序 它们通常被称为 第三代语言 ( GL) 还有一些过程化程序设计语言是某种特定的DBMS专用的 这些语言一般被称为 第四代语言 ( GL) 即数据库专用语言 常见的数据库专用的过程化语言如dBASE语言 Paradox数据库的PAL语言等等

结构化查询语言(SQL)

结构化查询语言(Structure Query Language)是基于关系模型的数据库查询语言 它是一种非过程化的程序语言 也就是说 没有必要写出将如何做某事情 只需写出做到什么就可以了 写出的语句可看作是一个问题 称为 查询 (Query) 针对这个查询 得到所需的查询结果 下面是一个例子

Select Name Total from Class where Total>

这个查询意为从数据库表Class中将总分(Total)大于 的所有人选出来 并列出他们的姓名(Name)和总分(Total)

把SQL描述为子语言更适当一些 因为它没有任何屏幕处理或用户输入/输出的能力 它的主要目的是为了提供访问数据库的标准方法 而不管数据库应用的其余部分是用什么语言编写的 它既是为数据库的交互式查询而设计的(因此被称为动态SQL) 同时也可在过程化语言编写的数据库应用程序中使用(因此被称为嵌入式SQL)

lishixinzhi/Article/program/Delphi/201311/25182

Visual Query Builder 以可视化的方式建立SQL语句对数据库表和表中的记录进行 *** 作

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

SQL links使得Delphi数据库应用程序利用SQL语言访问驻留在远程服务器上的数据 这些服务器包括ORACLE Sybase Microsoft SQL Server Informix InterBase 当安装SQL Link驱动程序之后 SQL语句便可以直接 *** 作服务器上的数据

Delphi可以访问的数据源(DataSource)

Delphi数据库应用程序是通过BDE获取它们所需的数据的 BDE与不同类型的数据源打交道 BDE可以使用的数据源有如表 所示

表 Delphi可访问的数据源

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

数据源(DataSource)   特 性 描 述  文件扩展名

─────────────────────────────────────

dBASE数据库  数据库表是通过dBASE数据库管理系统或DBD建立的 每个表是一个独立的文件  DBF

─────────────────────────────────────

Paradox数据库  数据库表是通过Paradox数据库管理系统  DB或DBD建立的 每个表是一个独立的文件

─────────────────────────────────────

ASCII文件  表是通过Database Desktop建立的 每个  TXT表是一个独立的文件

─────────────────────────────────────

本地InterBase服务器  数据库是通过InterBase数据库管理系统  GDB建立的 多个表包含在一个数据库文件中

─────────────────────────────────────

SQL数据库服务器   数据库是通过相应的数据库服务器提供的 依赖不同的ORACLE Sybase Informix 专用或通用工具建立的 也可以通过DBD来 数据库管理Microsoft SQL Server  创建数据库 并通过SQL Link访问数据库  系统InterBase

─────────────────────────────────────

ODBC数据源  主要是指那些具有ODBC接口的数据库系统 依赖于相应如MS Access Btrieve等的数据库

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

Delphi数据库的体系结构

Delphi使用可视化的部件创建数据库应用 跟创建其它的非数据库应用程序一样 数据库部件都具备一定的属性 程序设计人员可以在设计过程中设置部件的多种属性 也可以在程序运行过程中通过程序来设置部件的各种属性

在Delphi部件板上有两页数据库部件用于开发数据库应用程序

数据访问部件页 该页上的部件主要用于说明有关的数据库的信息 如应用程序要访问(连接)的数据库 要访问数据库中的具体的数据库表 以及要访问表中哪些字段等 在实际的开发应用中常用的部件有TDataSource TTable TQuery等

数据控制部件页 该页上的部件主要用于显示浏览数据库中的数据信息 为用户提供了一个可视化的界面 常用的部件有 TDBGrid TDBEdit TDBCheck等 可以让用户对数据库中的信息进行有效的浏览 编辑 插入 删除等 *** 作

TTable TQuery TStoredproc部件负责与实际的数据库表联系 并从中获取数据信息 因而它们又常常被称为数据集部件 它们在程序设计过程中是可见的 但在程序运行时是不可见的 它们通过 BDE 为应用程序提供与数据库的连接 数据控制部件通过TDataSource部件与数据集部件相连 为用户提供一个可视化的界面 并在其中显示数据库中的数据信息

数据访问部件

数据访问部件页上提供了一组数据访问部件用来访问数据库中的数据

当要创建一个数据库应用时 首先在窗体中选择一个数据访问部件 然后为数据访问部件设置有关的属性 说明要访问的数据库 数据表以及表中的记录等 数据访问部件为数据控制部件与数据源建立一条通道 数据访问部件在程序运行时是不可见的 下表列出了数据访问页上的数据访问部件以及它们的主要用途

表 数据访问部件

━━━━━━━━━━━━━━━━━━━━━━━━━━━━

部件名称   主 要 用 途

────────────────────────────

作为数据集部件TTable TQuery StoredProc组TDataSource 件与数据浏览件TDBGrid TDBEdit之间传送数据的通道

────────────────────────────

TTable  它是存取磁盘上数据库表的媒介 它通过BDE存取数据库表中的数据 TTable再与TDataSource进行 对话 使得数据浏览部件能够有效地从TTable中访问数据并能显示和编辑其中的数据

────────────────────────────

TQuery  它利用SQL语言访问磁盘上数据库表中的数据 并与TDataSource 对话 实现数据浏览部件对数据库的访问

────────────────────────────

TStoredProc 在应用程序中 它主要用来访问远程服务器中的存贮过程

────────────────────────────

TDatabase  当应用程序要登录到一个远程服务器上的数据库时 可以用该部件来建立应用程序与数据库永久

性的连接

────────────────────────────

TBatchMove 用于复制数据库表的结构或表中的记录

────────────────────────────

TReport  用于创建数据库的输出报表

━━━━━━━━━━━━━━━━━━━━━━━━━━━━

lishixinzhi/Article/program/Delphi/201311/25180

以上就是关于如何用 Delphi 创建系统服务程序全部的内容,包括:如何用 Delphi 创建系统服务程序、DELPHI基础教程:Delphi开发数据库应用程序概述(一)[1]、DELPHI基础教程:Delphi开发数据库应用程序概述(一)[3]等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/9516830.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-29
下一篇 2023-04-29

发表评论

登录后才能评论

评论列表(0条)

保存