📄 readme.htm
字号:
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<title>
DelphiDabbler.com Info Sheet: System Information Unit
</title>
<style type="text/css">
<!--
body {
margin: 1em;
padding: 0;
font-family: Verdana, Arial, sans-serif;
font-size: 9pt;
line-height: 150%;
}
h1 {
margin: 0 0 1em 0;
padding: 0.5em;
border: 1px silver solid;
background-color: #eee;
font-size: 13pt;
font-weight: bold;
text-align: center;
}
h1 .subtitle {
font-style: italic;
color: #336;
}
h2 {
margin: 1em 0 0 0;
padding: 0;
padding-bottom: 6px;
border-bottom: 1px silver solid;
font-size: 11pt;
font-weight: bold;
}
h3 {
margin: 0.5em 0 0 0;
padding: 0;
font-size: 9pt;
font-weight: bold;
}
p {
margin: 0.5em 0 0 0;
padding: 0;
}
ul, ol {
margin: 0.5em 0 0 3em;
padding: 0;
}
ul {
list-style-type: square;
}
ul.spaced li,
ol.spaced li {
margin-top: 0.5em;
}
ul.spaced li,
ol.spaced li {
margin-top: 0.5em;
}
ul.unspaced li,
ol.unspaced li {
margin-top: 0;
}
ul.unspaced li.first,
ol.unspaced li.first {
margin-top: 0.5em;
}
code {
font-family: "Courier New", Courier, monospace;
}
a:link {
color: #336;
text-decoration: underline;
}
a:visited {
color: #669;
text-decoration: underline;
}
a:active {
color: #336;
text-decoration: underline;
}
a:hover {
text-decoration: underline;
}
.gototop {
margin: 1em 0 0 0;
padding: 0.3em 0 0 0;
text-align: center;
position: relative;
float: right;
font-weight: bold;
}
.pullout {
border-left: 8px silver solid;
xborder-bottom: 2px silver solid;
xborder-top: 2px silver solid;
background-color: #eee;
margin: 0.5em 0 0 0;
padding: 0.25em 0.5em;
font-style: italic;
}
.indent {
margin-left: 3em;
}
.highlight {
color: #336;
font-style: italic;
font-weight: bold;
}
.endnotes {
margin: 1.5em 0 0 0;
padding: 1em 0 0 0;
border-top: 1px silver solid;
}
.comments {
font-style: italic;
}
.copyright,
.copyright a:link,
.copyright a:visited,
.copyright a:active {
margin: 1em 0 0 0;
color: gray;
font-size: 8pt;
text-align: right;
}
-->
</style>
</head>
<body>
<h1>
<div>System Information Unit</div>
<div class="subtitle">Information Sheet</div>
</h1>
<h2 id="contents">
Contents
</h2>
<ul>
<li><a href="#description">Description</a></li>
<li><a href="#compatibility">Compatibility</a></li>
<li><a href="#demo">Demo Project</a></li>
<li><a href="#installation">Installation</a></li>
<li><a href="#update">Update History</a></li>
<li><a href="#license">License and Disclaimer</a></li>
<li><a href="#author">About the Author</a></li>
</ul>
<p class="gototop">
» <a href="#contents">Contents</a>
</p>
<h2 id="description">
Description
</h2>
<p>
This unit contains a group of static classes and some global variables that
provide information about the user's computer system and operating system.
The static classes are:
</p>
<ul>
<li>
<var>TPJComputerInfo</var> – provides information about the host
computer.
</li>
<li>
<var>TPJSystemFolders</var> – gets the full path to certain system
folders.
</li>
<li>
<var>TPJOSInfo</var> – gives information about the operating
system information including the platform, product name, product ID
code, version and service packs.
</li>
</ul>
<p>
In addition, the unit extends the information provided by the
<code>SysUtils</code> unit's <var>Win32xxx</var> variables (such as
<var>Win32Platform</var>) by defining further <var>Win32xxx</var>
variables that store the extended operating system information available on
later NT platform OSs.
</p>
<h3>
Deprecated Code
</h3>
<p>
The <em>TPJSysInfo</em> component and <var>SIGetxxx</var> functions provided
in earlier versions of the unit are still available. They have been
re-implemented to call methods of the above static classes. The component
and functions have been made available for backward compatibility but are
now deprecated and should not be used in new code.
</p>
<h3>
Bugs
</h3>
<p>
There was a bug in v2.0 that raised an exception when accessing
<var>TPJOSInfo.ProductName</var> on Windows 2003. This was fixed in v2.0.1.
Thanks to <em>Guillermo Fazzolari</em> for reporting and fixing this.
</p>
<p class="gototop">
» <a href="#contents">Contents</a>
</p>
<h2 id="compatibility">
Compatibility
</h2>
<p>
This unit works with all editions of Delphi from 3 to 2006. The unit no
longer compiles with Delphi 2.
</p>
<p>
Since the unit makes unmanaged calls to the Windows API the unit will not
work with Delphi.net compilers.
</p>
<p>
The included demo project will not compile with Delphi 3.
</p>
<p>
The supplied help file is designed to integrate with the Delphi 3 to 7 IDEs.
It will not integrate with later IDEs since the help format has changed.
</p>
<p class="gototop">
» <a href="#contents">Contents</a>
</p>
<h2 id="demo">
Demo Project
</h2>
<p>
A demo project is included in the download. The project contains a tab set
where each tab displays the information from one of the classes, global
variables, and the deprecated functions and component.
</p>
<p>
Since the demo exercises the deprecated code you will get
"deprecated" warnings when building with Delphi 6 and later.
</p>
<p>
Note: the demo project does not compile with Delphi 3 since it uses
overloaded methods.
</p>
<p class="gototop">
» <a href="#contents">Contents</a>
</p>
<h2 id="installation">
Installation
</h2>
<p>
The System Information Unit and the demo program are supplied in a zip file.
Before installing you need to extract all the files from the zip file,
preserving the directory structure. The following files will be extracted:
</p>
<ul>
<li>
<code><strong>PJSysInfo.pas</strong></code> – source code of the
static classes, global variables and deprecated functions and
component.
</li>
<li>
<code><strong>PJSysInfo.dcr</strong></code> – resource file
containing the component's glyph.
</li>
<li>
<code>PJSysInfo.hlp</code> – unit help file (integrates
with Delphi 3..7 IDE).
</li>
<li>
<code>PJSysInfo.als</code> – "a-keyword" file
for integration with Delphi 6 or 7 OpenHelp system.
</li>
<li>
<code>ReadMe.htm</code> – information sheet.
</li>
<li>
<code>ChangeLog.txt</code> – unit's change log.
</li>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -