当前位置:首页 » 手机资讯 » 怎样读系统软件
扩展阅读
怎样才能打开抖抖音视频 2025-05-20 09:32:57

怎样读系统软件

发布时间: 2022-05-17 17:33:54

A. 如何识别电脑里的系统软件和应用软件

  1. 首先,打开你安装系统的盘,基本上都是C盘,找到windows,这里边的所有的软件都是windows的系统软件,如regedit(注册表编辑器)。

B. 就是误删了系统软件,恢复时怎样读取odex

odex是从原程序提取的吧.如果源程序已经没有了估计就提取不了了.可以重新下载一个源程序,如果没有的话可以找相同机器相同操作系统版本的提取一个来放到原来的位置试下.
再不行的话就重新刷系统了.也很快方便

C. C++怎么读取系统正在运行的其他程序

可以用API函数FindWondow, FindWondow是这样工作的,如果找到特定字符串的窗口标题,那么返回该窗口的句柄,否则返回NULL
举个例子:

#include<stdio.h>
#include <windows.h>
int main()
{
HWND hw = FindWindow(NULL, L"计算器");
if (hw)
printf("有");
return 0;
}

D. 诺基亚s60系统文件如何阅读

S60系统盘分为:C盘,D盘,E盘,Z盘
C盘:手机内存盘。D盘:虚拟盘,系统会自动管理。E盘:存储卡。Z盘:动态盘,只读盘。
C、Z盘是比较主要的,就像电脑的系统盘一般。
以下是C盘主要文件介绍:
1、c/cache下载缓存文件夹,可删。
2、c/data/games拼图文件,删除后拼图没有图片。
3、c/data/images存在于手机的图片。
4、c/data/sounds存在于手机的铃声。
5、c/data/other存在于手机的Flash。
6、c/data/Videos存在于手机的视频。
7、c/system/apps一些软件运行后会留下记录(智能卫士)。
8、c/system/data程序设定数据,删除后所有原设定的数据将全部丢失。
9、c/system/install所有的反安装文件。
10、c/system/temp下载文件用的时临时存放目录。
下面介绍c:\system\Data这个文件夹c:\system\Data\这个文件夹记录程序初始化或运行时的数据的。不能乱删!
c:\system\data\cbs\这个文件夹里有两个dat文件。
c:\system\Data\saveddecks\这个文件夹默认为空,作用与手机服务商的网络有关。
c:\system\Data\tore\这个文件主要用来存储用wap上网时的一些网页缓存
c:\system\Data\Applications.dat\这是用来记录手机的应用程序与游戏安装数据的文件,会随着软件安装的增多而增大
c:\system\Data\backgroundimage.mbm\这是用来保存系统中的墙纸图片文件,有了这个文件就算你的jpg格式的墙纸文件丢失,墙纸也会存在(提示:如果关闭墙纸功能,这个文件会自动删除)
c:\system\Data\Bookmarks1.db\书签数据文件,用来记录wap地址
c:\system\data\meddiaplayer.dat\RealPlayer记录文件
c:\system\Data\CACerts.dat\安装各种软件的证书文件
c:\system\Data\Calcsoft\系统自带的计算器
c:\system\Data\Clockapp.dat\这是时钟存档文件
c:\system\Data\Contacts.cdb\电话本数据文件,随着电话的记录增多而增大
c:\system\Data\Logdbu.dat\通讯数据文件,包括来电,去电,通话时间,GPRS流量等……
c:\system\Data\Notepad.dat\当你使用了记事本后会产生这个文件,如果你不想使用记事本,可以删除这个文件。
c:\system\Data\NITZ.dat\默认大小1b
c:\system\Data\pinboard\收藏夹数据文件
c:\system\Data\SavedDerks.db\手机服务商的网络数据文件
c:\system\Data\smsreast.dat、smssegst.dat\手机短信没定存档文件
c:\system\Data\Template.n31\信息模版文件
c:\system\Data\UnitConverter.ini\手机自带的单位转换器初始化文件
c:\system\Data\wapreast.dat\WAP设定存档文件,初始化大小为59b下面介绍c:\Private这个文件夹

├10000850(网标) 放入MBM文件可改网标(移动Logo_460_0_OTA.mbm,联通Logo_460_1_OTA.mbm)

├100012a5
│ DBS_100065FF_Contacts.cdb 名片夹
│ DBS_100069CC_btregistry 蓝牙设备名单
│ DBS_101F84D6_wpcontext.db
│ DBS_101F8683_ScshortcutEngine.ini 待机模式下快捷方式的设置.删除后恢复默认设置
│ DBS_101F8878_Notepad.dat 记事本.删除后清空所有记事本内容
│ DBS_101F8878_Template.n31 短信中的常用短语.删除后恢复默认
│ DBS_101F99FB_nsmldmsetting.db
│ DBS_101F99FB_nsmldssetting.db
│ DBS_101FD685_BrowserBookmarks.db 自带浏览器书签(收藏夹)
│ DBS_101FD685_BrowserSavedPages.db 保存的网页
│ DBS_101FE031_mcv7.mpd 音乐播放器播放列表
│ DBS_101FE978_eposlm.ldb 地图标记
│ DBS_10201AFE_nssvasdatabase.db 声控命令
│ DBS_10201AFF_Sidatabase.db 系统集成数据库
│ DBS_10202869_RCSE_AudioCodec
│ DBS_10202869_RCSE_SCCPSetting
│ DBS_10202869_RCSE_SIPSetting
│ DBS_10202869_RCSE_VoIProfiles 以上四个是关于网络电话的配置
│ DBS_102045FE_MIDP2SystemAMSDynamicV2
│ DBS_102045FE_MIDP2SystemAMSStaticV2
│ DBS_102045FE_MIDP2SystemAMSUserV2 以上三个文件是Java系统驱动
│ DBS_10206A8B_TzLocalization.db 可能是时区数据
│ DBS_10207216_SWInsLog.db 程序安装和删除的记录.删除后清空程序管理的记录
│ DBS_102072E9_eapol.dat
│ DBS_10281F95_FeedsDatabase.db Feed订阅

【其中还有几个未知】
│ 【C:\Private\100012a5\DBS_文件!!
│ 通过备份其中的文件,格机后还原。可以恢复电话本、GPS接入点等信息】
├10003a3f\import\apps 安装在手机程序的快捷方式(扩展名为.rsc)
\Dtstor.ini
│ \NonNativeTypes.dat 用记事本打开内容为:TStubMIDP2RecogExe.exe,表面看应该与Java扩展程序有关
├10003a5b\Calendar 日历项.删除后清空所有日历项
├10003A73\CNTMODEL.INI 快速拨号设置
├1000484B\短信文件夹
├10005399\SchelesBackup.dat 日程备份
├100058ec\PluginUidToViewIdCache.dat
├10005902\Calcsoft自带计算器初始文件
├10005903\clockapp.dat 时钟的设置
├100059c9\LocaleData\CommonData.D00 【17b这个文件也永远不变】
├ \LocaleData.D159
├ \LocaleData.D31 【与语言和地理位置设置有关,估计31定义了SIM卡语言,表示简体】
├ \start.dat 开机自启动的程序信息,每当允许一个程序自启动这个dat文件就会重新被写入
├10005A3E\mediaplayer.dat 自带播放器RealPlayer播放历史记录
├10008d38\BrowserBookmarks 自带浏览器保存的书签
├10008d39\bpopupwl.db
│ \faviconstore.db 书签\网站logo图标

├10009D8F\ECom.dat
│ \ECom.idx
│ \Ecom***ng 【不明作用,应该是系统创建的文件,删除后重启自动生成】
├1000a859\cbtopicsmsgs.dat 与"广播信息" 有关
├ \cbunsaved.dat
├101f401d\Logdbu.dat 记录了通讯记录
├101F413C\sipprofiles.dat SIP(Session Initiation Protocol)设置
├101f4668\UnitConVerter.ini 手机自带单位转换的配置信息
├101F4CD2\Applications.dat 程序UID和图标路径数据记录
│ (应用程序安装数据记录文件,随着软件安装的增多而增大)
├101F5027\AlarmServer.ini 闹钟的设置文件
├101f51F2\rbd (一堆空子文件夹,尝试删除时自动重启)
│ domaincontexts.dat│
│ drmtime.dat 与闹钟的贪睡有关
│ plainrc.dat
│ ricontext.dat
│ timerere.dat
├101f6dc5\DRMHS.dat 估计与贪睡闹钟的关闭有关
├101f6efa\reserve.bin
├101f7295\sidcache.cache
├101F72A6\CACERTS.DAT
│ \certclients.dat
│ \keys.dat 以上三个是安装软件的证书集
├101f7989\esock\nobackup
│ \SMS\SMSREAST.DAT
│ \SMS\SMSSEGST.DAT 以上两个都是短信配置文件
│ \SMS\WAPREAST.DAT WAP设定存档文件

├101F79DD\WimTrustSettingsStore.dat
├101F7C87\SuiteConf.xml
├101f8637\ 临时文件,建议删除
├101f875a\import
│ \MidletTemp
│ \startup\ 开机自启动程序.比如来电通[a0001806].dat
│ \Tasks
├101f8857\mgxmimetypeindex.dat 扩展名关联程序信息
├101f96ec\AHLEURL
├101f9a06\nsmldmtree.db 聊天室
├101fb64e\Ss.dat
├101FE41E\Lifeblog.ini 系统写E生活的配置文件
├101ff976\visualradio.ini 可是收音机配置文件
├101ffa91\ClipartStorage.ini
│ \ImageEditor.ini
│ \PluginStorage.ini 以上三个是手机自带图片编辑器
├10202be9\bur
│ \persists 系统文件,与Z盘文件对应
├10207114\import 主题桌面文件
├10207275\wpsimcard.db sim卡信息
├102072C4\FotaState
│ \reserved(这个文件很大)是在线升级用的文件,到设备管理中更新一下又有了,删除
├102072CC\SIMLanguage.dat SIM卡语种配置文件
├1020735b\ 临时文件夹,飞信产生的垃圾文件在此,建议删除
├10208A31\atexpl.bin
│ \mglblacklist.txt 看名字似乎是黑名单,我的打开只有一个E字.奇怪的黑名单
├200002c0\catalog\ 与quickoffice有关
│ \installation
│ \userdata.xml
├200002c1\quickword.ini 与quickword有关
├200009ba\printintent.db
├20001bb9\20001bb9.bin 搜索的配置文件
\vidict.dat
【如后面还有,多数是自己所安装软件的生产文件】以下三个可能因为版本不同,部分机型找不到:
C:\private\101F8530\COOKIES.DAT 传说中的COOKIES
C:\private\10208A29\MANUALVIDEOEDITOR.INI 自带视频编辑器配置文件
C:\private\2003252\MENUKEYSERVER.INI 菜单键配置文件

E. Android应用程序怎样获取读取系统文件的权限

1、必须是Android系统开发人员,否则你无法修改init.rc等文件。 2、你的应用程序必须要获得system权限。
在应用层 你要想用代码获得系统文件权限,除非你手机root了
要么你自己坐rom。。。。 自己修改 init,rc
具体可以参考这篇博文:http://blog.sina.com.cn/s/blog_5f35912f0100w4ld.html

F. 重装系统后,怎么识别D盘已安装的软件

1、重做系统后,注册表已经发生改变。原先D盘安装的软件会出现2种情况。
2、第一种,某些软件不依赖于注册表。重新安装系统后该软件仍然可以正常运行。比如qq、快玩等。
3、第二种,某些软件依赖注册表。重新安装系统后该软件再次运行时会读取注册表中数据,如果数据无法读取或者读取出错。则该软件拒绝运行。要求操作者重现安装该软件。如office系列等。
4、重新安装系统后,D盘已经安装的软件无法全部识别。第一种可以识别并直接运行。第二种只能重现安装并覆盖D盘同目录。
5、如果重新安装系统前做过注册表的备份。可以在安装系统后恢复备份,则此时D盘已经安装软件均可正常识别运行。

G. 如何用iso安装系统,我电脑里面下载了ISO系统安装程序,如何在开机时候能够读取

一:将ISO的文件用刻录机刻成光盘
开机安ESC进入光驱起动他就可以提示你进行安装.
注:在刻录时一定不要刻成数据形式的了,不然光盘是读不出来的,
要刻成能够自动读取的形式.
二:使用硬盘起动WINPE系统
在此系统下使用Ghost进行安装
GHOST文件可以在ISO文件中找到

H. 怎么识别电脑c盘系统文件

一.电脑系统文件分为系统安装成功后所解压的文件夹,以及安装在C盘的系统软件夹,通常都有这几个文件夹

如上图

这几个文件夹的文件都不可以随便删除,删除了都会导致出现系统故障以及软件故障


二、用压缩/解压缩软件查看。(此方法无需设置,直接可以查看所有文件)

1、打开WinRAR软件,从软件中打开C盘。C盘文件一览无遗。

三.步骤一:我们首先关闭Win7系统休眠功能,最多能释放出3G多空间喔
“以管理员身份运行,所有程序→附件→命令提示符”,右击选择“以管理员身份运行”,进入命令提示符后,手工输入“powercfg -h off” 关闭Win7系统休眠功能。

步骤二:关闭系统保护
计算机右键属性--高级管理设置--系统保护。

步骤三:转移虚拟内存
计算机右键属性--高级管理设置--高级--性能-设置-高级-更改。

步骤四:转移“用户的文件”
桌面双击 Administrator(用户文件夹)文件夹,在这里推荐转移4个系统文件夹“桌面,收藏夹,我的桌面,我的文档”,右键要转移的项目属性--位置 X:UsersAdministrator 即可。
步骤五、删文件不删功能、简化优化系统不简优化性能
1.C:WindowsWebWall***(Windows自带墙纸)推荐转移
2.C:下
搜索输入 ati*.inf (14.6M)nv*.inf(94.9M) (A卡用户删N、N卡用户删A)
搜索输入 mdm*.inf (21.6M) 现在早已没人用的东西删
搜索输入 prn*.inf (781M) prn 开头的全部都是打印机驱动,相信大多数人都是用不上的。就是有打印机,买的时候也会带有驱动,删除它。
注意:prnms001.inf/prnoc001.inf/prnms002.inf这三个并不是打印机驱动,建议保留。
3.C:Boot(13.3M) 这个里面是不同语言的Windows启动界面,除zh-CN外均可删除。
4.C:perflogsSystemDiagnostics(9.39M) 这个是系统测试之后的测试记录文件存放处,删。
5.C: 有一些程序(Dreamweaver……)安装的时候会把安装文件解压至此文件夹里面。可以安全删除,几十M到几百M不等。

I. vb如何读取系统已安装软件并获取软件版本号

布置这类作业我估计是你们老师接到这类赚钱活儿了。

VB可以用GetSetting来读取注册表,但只能在VB区域的注册表里读出。如果希望读取系统里的数据必须从系统区域里读出注册表内容。VB里并未自带这类方法,因此必须借助Win API函数。使用起来比较复杂我倒是可以给你一些例子的,后面我可以附上。

如果只是为了做作业是不是应该用更简单的方法呢?VB里的Dir函数可以列出文件夹,通常来说额外安装的程序都会在C:\Program Files\里有相应文件夹,你只要把那里的文件夹名读出来不就可以了?代码如下:
MyPath = "c:\Program Files\" ' 指定路径。
MyName = Dir(MyPath, vbDirectory) ' 找寻第一项。
Do While MyName <> "" ' 开始循环。
' 跳过当前的目录及上层目录。
If MyName <> "." And MyName <> ".." Then
' 使用位比较来确定 MyName 代表一目录。
If (GetAttr(MyPath & MyName) And vbDirectory) = vbDirectory Then
Debug.Print MyName ' 如果它是一个目录,将其名称显示出来。
End If
End If
MyName = Dir ' 查找下一个目录。
Loop

如果想通过Win API函数实现也行,给你些有关的API声明
Option Explicit

Private Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" _
(dest As Any, source As Any, ByVal numBytes As Long)

Private Declare Function ExpandEnvironmentStrings Lib "kernel32" Alias "ExpandEnvironmentStringsA" _
(ByVal lpSrc As String, ByVal lpDst As String, ByVal nSize As Long) As Long

''''//注册表 API 函数声明
Private Declare Function RegOpenKeyEx Lib "advapi32.dll" Alias "RegOpenKeyExA" _
(ByVal hKey As Long, ByVal lpSubKey As String, ByVal ulOptions As Long, _
ByVal samDesired As Long, phkResult As Long) As Long

Private Declare Function RegCloseKey Lib "advapi32.dll" (ByVal hKey As Long) As Long

Private Declare Function RegQueryValueEx Lib "advapi32.dll" Alias _
"RegQueryValueExA" (ByVal hKey As Long, ByVal lpValueName As String, _
ByVal lpReserved As Long, lpType As Long, lpData As Any, _
lpcbData As Long) As Long

Private Declare Function RegSetValueEx Lib "advapi32" Alias "RegSetValueExA" _
(ByVal hKey As Long, ByVal lpValueName As String, _
ByVal Reserved As Long, ByVal dwType As Long, _
ByVal lpbData As Any, ByVal cbData As Long) As Long

Private Declare Function RegCreateKeyEx Lib "advapi32" Alias "RegCreateKeyExA" _
(ByVal hKey As Long, ByVal lpSubKey As String, ByVal Reserved As Long, _
ByVal lpClass As String, ByVal dwOptions As Long, _
ByVal samDesired As Long, lpSecurityAttributes As SECURITY_ATTRIBUTES, _
phkResult As Long, lpdwDisposition As Long) As Long

Private Declare Function RegEnumKeyEx Lib "advapi32.dll" Alias "RegEnumKeyExA" _
(ByVal hKey As Long, ByVal dwIndex As Long, ByVal lpName As String, _
lpcbName As Long, ByVal lpReserved As Long, ByVal lpClass As String, _
lpcbClass As Long, lpftLastWriteTime As FILETIME) As Long

Private Declare Function RegEnumValue Lib "advapi32.dll" Alias "RegEnumValueA" _
(ByVal hKey As Long, ByVal dwIndex As Long, _
ByVal lpValueName As String, lpcbValueName As Long, ByVal lpReserved As Long, _
lpType As Long, ByVal lpData As String, lpcbData As Long) As Long

Private Declare Function RegDeleteKey Lib "advapi32.dll" Alias "RegDeleteKeyA" _
(ByVal hKey As Long, ByVal lpSubKey As String) As Long

Private Declare Function RegDeleteValue Lib "advapi32.dll" Alias "RegDeleteValueA" _
(ByVal hKey As Long, ByVal lpValueName As String) As Long

Private Declare Function RegSetValueExString Lib "advapi32.dll" Alias "RegSetValueExA" _
(ByVal hKey As Long, ByVal ipValueName As String, _
ByVal Reserved As Long, ByVal dwType As Long, _
ByVal lpValue As String, ByVal cbData As Long) As Long

Private Declare Function RegSetValueExLong Lib "advapi32.dll" Alias "RegSetValueExA" _
(ByVal hKey As Long, ByVal lpValueName As String, _
ByVal Reserved As Long, ByVal dwType As Long, _
lpValue As Long, ByVal cbData As Long) As Long

Private Declare Function RegSetValueExByte Lib "advapi32.dll" Alias "RegSetValueExA" _
(ByVal hKey As Long, ByVal lpValueName As String, _
ByVal Reserved As Long, ByVal dwType As Long, _
lpValue As Byte, ByVal cbData As Long) As Long

Private Declare Function RegQueryInfoKey Lib "advapi32.dll" Alias "RegQueryInfoKeyA" _
(ByVal hKey As Long, ByVal lpClass As String, lpcbClass As Long, _
ByVal lpReserved As Long, lpcSubKeys As Long, _
lpcbMaxSubKeyLen As Long, lpcbMaxClassLen As Long, lpcValues As Long, _
lpcbMaxValueNameLen As Long, lpcbMaxValueLen As Long, _
lpcbSecurityDescriptor As Long, lpftLastWriteTime As FILETIME) As Long

Private Declare Function RegEnumValueInt Lib "advapi32.dll" Alias "RegEnumValueA" _
(ByVal hKey As Long, ByVal dwIndex As Long, ByVal lpValueName As String, _
lpcbValueName As Long, ByVal lpReserved As Long, lpType As Long, _
lpData As Byte, lpcbData As Long) As Long

Private Declare Function RegEnumValueStr Lib "advapi32.dll" Alias "RegEnumValueA" _
(ByVal hKey As Long, ByVal dwIndex As Long, ByVal lpValueName As String, _
lpcbValueName As Long, ByVal lpReserved As Long, lpType As Long, _
lpData As Byte, lpcbData As Long) As Long

Private Declare Function RegEnumValueByte Lib "advapi32.dll" Alias "RegEnumValueA" _
(ByVal hKey As Long, ByVal dwIndex As Long, ByVal lpValueName As String, _
lpcbValueName As Long, ByVal lpReserved As Long, lpType As Long, _
lpData As Byte, lpcbData As Long) As Long

''''//注册表结构
Private Type SECURITY_ATTRIBUTES
nLength As Long
lpSecurityDescriptor As Long
bInheritHandle As Boolean
End Type

Private Type FILETIME
dwLowDateTime As Long
dwHighDateTime As Long
End Type

''''//注册表访问权
Const KEY_QUERY_VALUE = &H1
Const KEY_SET_VALUE = &H2
Const KEY_CREATE_SUB_KEY = &H4
Const KEY_ENUMERATE_SUB_KEYS = &H8
Const KEY_NOTIFY = &H10
Const KEY_CREATE_LINK = &H20
Const KEY_ALL_ACCESS = &H3F

''''//打开/建立选项
Const REG_OPTION_NON_VOLATILE = 0&
Const REG_OPTION_VOLATILE = &H1

''''//Key 创建/打开
Const REG_CREATED_NEW_KEY = &H1
Const REG_OPENED_EXISTING_KEY = &H2

''''//预定义存取类型
Const STANDARD_RIGHTS_ALL = &H1F0000
Const SPECIFIC_RIGHTS_ALL = &HFFFF

''''//严格代码定义
Const ERROR_SUCCESS = 0&
Const ERROR_ACCESS_DENIED = 5
Const ERROR_NO_MORE_ITEMS = 259
Const ERROR_MORE_DATA = 234 ''''// 错误

''''//注册表值类型列举
Private Enum RegDataTypeEnum
'''' REG_NONE = (0) ''''// No value type
REG_SZ = (1) ''''// Unicode nul terminated string
REG_EXPAND_SZ = (2) ''''// Unicode nul terminated string w/enviornment var
REG_BINARY = (3) ''''// Free form binary
REG_DWORD = (4) ''''// 32-bit number
REG_DWORD_LITTLE_ENDIAN = (4) ''''// 32-bit number (same as REG_DWORD)
REG_DWORD_BIG_ENDIAN = (5) ''''// 32-bit number
'''' REG_LINK = (6) ''''// Symbolic Link (unicode)
REG_MULTI_SZ = (7) ''''// Multiple, null-delimited, double-null-terminated Unicode strings
'''' REG_RESOURCE_LIST = (8) ''''// Resource list in the resource map
'''' REG_FULL_RESOURCE_DESCRIPTOR = (9) ''''// Resource list in the hardware description
'''' REG_RESOURCE_REQUIREMENTS_LIST = (10)
End Enum

''''//注册表基本键值列表
Public Enum RootKeyEnum
HKEY_CLASSES_ROOT = &H80000000
HKEY_CURRENT_USER = &H80000001
HKEY_LOCAL_MACHINE = &H80000002
HKEY_USERS = &H80000003
HKEY_PERFORMANCE_DATA_WIN2K_ONLY = &H80000004 ''''//仅Win2k
HKEY_CURRENT_CONFIG = &H80000005
HKEY_DYN_DATA = &H80000006
End Enum

''''// for specifying the type of data to save
Public Enum RegValueTypes
eInteger = vbInteger
eLong = vbLong
eString = vbString
eByteArray = vbArray + vbByte
End Enum

''''//保存时指定类型
Public Enum RegFlags
IsExpandableString = 1
IsMultiString = 2
''''IsBigEndian = 3 ''''// 无指针同样不要设置大Endian值
End Enum

Private Const ERR_NONE = 0

Function SetRegistryValue(ByVal hKey As RootKeyEnum, ByVal KeyName As String, _
ByVal ValueName As String, ByVal Value As Variant, valueType As RegValueTypes, _
Optional Flag As RegFlags = 0) As Boolean

Dim handle As Long
Dim lngValue As Long
Dim strValue As String
Dim binValue() As Byte
Dim length As Long
Dim retVal As Long

Dim SecAttr As SECURITY_ATTRIBUTES ''''//键的安全设置
''''//设置新键值的名称和默认安全设置
SecAttr.nLength = Len(SecAttr) ''''//结构大小
SecAttr.lpSecurityDescriptor = 0 ''''//默认安全权限
SecAttr.bInheritHandle = True ''''//设置的默认值

''''// 打开或创建键
''''If RegOpenKeyEx(hKey, KeyName, 0, KEY_ALL_ACCESS, handle) Then Exit Function
retVal = RegCreateKeyEx(hKey, KeyName, 0, vbNullString, REG_OPTION_NON_VOLATILE, KEY_ALL_ACCESS, SecAttr, handle, retVal)
If retVal Then Exit Function

''''//3种数据类型
Select Case VarType(Value)
Case vbByte, vbInteger, vbLong ''''// 若是字节, Integer值或Long值...
lngValue = Value
retVal = RegSetValueExLong(handle, ValueName, 0, REG_DWORD, lngValue, Len(lngValue))

Case vbString ''''// 字符串, 扩展环境字符串或多段字符串...
strValue = Value
Select Case Flag
Case IsExpandableString
retVal = RegSetValueEx(handle, ValueName, 0, REG_EXPAND_SZ, ByVal strValue, 255)
Case IsMultiString
retVal = RegSetValueEx(handle, ValueName, 0, REG_MULTI_SZ, ByVal strValue, 255)
Case Else ''''// 正常 REG_SZ 字符串
retVal = RegSetValueEx(handle, ValueName, 0, REG_SZ, ByVal strValue, 255)
End Select

Case vbArray + vbByte ''''// 如果是字节数组...
binValue = Value
length = UBound(binValue) - LBound(binValue) + 1
retVal = RegSetValueExByte(handle, ValueName, 0, REG_BINARY, binValue(0), length)

Case Else ''''// 如果其它类型
RegCloseKey handle
''''Err.Raise 1001, , "不支持的值类型"

End Select

''''// 返回关闭结果
RegCloseKey handle

''''// 返回写入成功结果
SetRegistryValue = (retVal = 0)

End Function

Function GetRegistryValue(ByVal hKey As RootKeyEnum, ByVal KeyName As String, _
ByVal ValueName As String, Optional DefaultValue As Variant) As Variant

Dim handle As Long
Dim resLong As Long
Dim resString As String
Dim resBinary() As Byte
Dim length As Long
Dim retVal As Long
Dim valueType As Long

Const KEY_READ = &H20019

''''// 默认结果
GetRegistryValue = IIf(IsMissing(DefaultValue), Empty, DefaultValue)

''''// 打开键, 不存在则退出
If RegOpenKeyEx(hKey, KeyName, 0, KEY_READ, handle) Then Exit Function

''''// 准备 1K resBinary 用于接收
length = 1024
ReDim resBinary(0 To length - 1) As Byte

''''// 读注册表值
retVal = RegQueryValueEx(handle, ValueName, 0, valueType, resBinary(0), length)

''''// 若resBinary 太小则重读
If retVal = ERROR_MORE_DATA Then
''''// resBinary放大,且重新读取
ReDim resBinary(0 To length - 1) As Byte
retVal = RegQueryValueEx(handle, ValueName, 0, valueType, resBinary(0), _
length)
End If

''''// 返回相应值类型
Select Case valueType
Case REG_DWORD, REG_DWORD_LITTLE_ENDIAN
''''// REG_DWORD 和 REG_DWORD_LITTLE_ENDIAN 相同
CopyMemory resLong, resBinary(0), 4
GetRegistryValue = resLong

Case REG_DWORD_BIG_ENDIAN
''''// Big Endian''''s 用在非-Windows环境, 如Unix系统, 本地计算机远程访问
CopyMemory resLong, resBinary(0), 4
GetRegistryValue = SwapEndian(resLong)

Case REG_SZ, REG_EXPAND_SZ
resString = Space$(length - 1)
CopyMemory ByVal resString, resBinary(0), length - 1
If valueType = REG_EXPAND_SZ Then
''''// 查询对应的环境变量
GetRegistryValue = ExpandEnvStr(resString)
Else
GetRegistryValue = resString
End If

Case REG_MULTI_SZ
''''// 复制时需指定2个空格符
resString = Space$(length - 2)
CopyMemory ByVal resString, resBinary(0), length - 2
GetRegistryValue = resString

Case Else '''' 包含 REG_BINARY
''''// resBinary 调整
If length <> UBound(resBinary) + 1 Then
ReDim Preserve resBinary(0 To length - 1) As Byte
End If
GetRegistryValue = resBinary()

End Select

''''// 关闭
RegCloseKey handle

End Function

Public Function DeleteRegistryValueOrKey(ByVal hKey As RootKeyEnum, RegKeyName As String, _
ValueName As String) As Boolean
''''//删除注册表值和键,如果成功返回True

Dim lRetval As Long ''''//打开和输出注册表键的返回值
Dim lRegHWND As Long ''''//打开注册表键的句柄
Dim sREGSZData As String ''''//把获取值放入缓冲区
Dim lSLength As Long ''''//缓冲区大小. 改变缓冲区大小要在调用之后

''''//打开键
lRetval = RegOpenKeyEx(hKey, RegKeyName, 0, KEY_ALL_ACCESS, lRegHWND)

''''//成功打开
If lRetval = ERR_NONE Then
''''//删除指定值
lRetval = RegDeleteValue(lRegHWND, ValueName) ''''//如果已存在则先删除

''''//如出现错误则删除值并返回False
If lRetval <> ERR_NONE Then Exit Function

''''//注意: 如果成功打开仅关闭注册表键
lRetval = RegCloseKey(lRegHWND)

''''//如成功关闭则返回 True 或者其它错误
If lRetval = ERR_NONE Then DeleteRegistryValueOrKey = True

End If

End Function

Private Function ExpandEnvStr(sData As String) As String
''''// 查询环境变量和返回定义值
''''// 如: %PATH% 则返回 "c:\;c:\windows;"

Dim c As Long, s As String

s = "" ''''// 不支持Windows 95

''''// get the length
c = ExpandEnvironmentStrings(sData, s, c)

''''// 展开字符串
s = String$(c - 1, 0)
c = ExpandEnvironmentStrings(sData, s, c)

''''// 返回环境变量
ExpandEnvStr = s

End Function

Private Function SwapEndian(ByVal dw As Long) As Long
''''// 转换大DWord 到小 DWord

CopyMemory ByVal VarPtr(SwapEndian) + 3, dw, 1
CopyMemory ByVal VarPtr(SwapEndian) + 2, ByVal VarPtr(dw) + 1, 1
CopyMemory ByVal VarPtr(SwapEndian) + 1, ByVal VarPtr(dw) + 2, 1
CopyMemory SwapEndian, ByVal VarPtr(dw) + 3, 1

End Function

J. 电脑读程序的软件

软件是计算机的灵魂,没有软件的计算机就如同没有磁带的录音机和没有录像带的录像机一样,与废铁没什么差别。使用不同的计算机软件,计算机可以完成许许多多不同的工作。它使计算机具有非凡的灵活性和通用性。也正是这一原因,决定了计算机的任何动作都离不开由人安排的指令。人们针对某一需要而为计算机编制的指令序列称为程序。程序连同有关的说明资料称为软件。配上软件的计算机才成为完整的计算机系统。

一般把软件分为两大类:应用软件和系统软件。

一、应用软件

应用软件是专门为某一应用目的而编制的软件,较常见的如:
1、文字处理软件
用于输入、存贮、修改、编辑、打印文字材料等,例如WORD、WPS等。
2、信息管理软件
用于输入、存贮、修改、检索各种信息,例如工资管理软件、人事管理软件、仓库管理软件、计划管理软件等。这种软件发展到一定水平后,各个单项的软件相互连系起来,计算机和管理人员组成一个和谐的整体,各种信息在其中合理地流动,形成一个完整、高效的管理信息系统,简称MIS。
3、辅助设计软件
用于高效地绘制、修改工程图纸,进行设计中的常规计算,帮助人寻求好设计方案。
4、实时控制软件
用于随时搜集生产装置、飞行器等的运行状态信息,以此为依据按预定的方案实施自动或半自动控制,安全、准确地完成任务。

二、系统软件

各种应用软件,虽然完成的工作各不相同,但它们都需要一些共同的基础操作,例如都要从输入设备取得数据,向输出设备送出数据,向外存写数据,从外存读数据,对数据的常规管理,等等。这些基础工作也要由一系列指令来完成。人们把这些指令集中组织在一起,形成专门的软件,用来支持应用软件的运行,这种软件称为系统软件。
系统软件在为应用软件提供上述基本功能的同时,也进行着对硬件的管理,使在一台计算机上同时或先后运行的不同应用软件有条不紊地合用硬件设备。例如,两个应用软件都要向硬盘存入和修改数据,如果没有一个协调管理机构来为它们划定区域的话,必然形成互相破坏对方数据的局面。
有代表性的系统软件有:
1、操作系统
管理计算机的硬件设备,使应用软件能方便、高效地使用这些设备。在微机上常见的有:DOS、WINDOWS、UNIX、OS/2等
2、数据库管理系统
有组织地、动态地存贮大量数据,使人们能方便、高效地使用这些数据。现在比较流行的数据库有FoxPro、DB-2、Access、SQL-server等
3、编译软件
CPU执行每一条指令都只完成一项十分简单的操作,一个系统软件或应用软件,要由成千上万甚至上亿条指令组合而成。直接用基本指令来编写软件,是一件极其繁重而艰难的工作。为了提高效率,人们规定一套新的指令,称为高级语言,其中每一条指令完成一项操作,这种操作相对于软件总的功能而言是简单而基本的,而相对于CPU的一眇操作而言又是复杂的。
用这种高级语言来编写程序(称为源程序)就象用预制板代替砖块来造房子,效率要高得多。但CPU并不能直接执行这些新的指令,需要编写一个软件,专门用来将源程序中的每条指令翻译成一系列CPU能接受的基本指令(也称机器语言)使源程序转化成能在计算机上运行的程序。完成这种翻译的软件称为高级语言编译软件,通常把它们归入系统软件。目前常用的高级语言有VB、C++、JAVA等,它们各有特点,分别适用于编写某一类型的程序,它们都有各自的编译软件。
一般把软件分为两大类:应用软件和系统软件。

一、应用软件 :是专门为某一应用目的而编制的软件。常见的应用软件有科学计算程序、图形与图像处理软件、自动控制程序、情报检索系统、工资管理程序、人事管理程序、财务管理程序以及计算机辅助设计与制造、辅助教学等软件。如:信息管理软件(如工资管理软件、人事管理软件等)、科学计算程序、文字与表格处理软件(如WPS、Word、Excel等)、图形与图像处理软件、辅助设计软件(如CAD、CAM、CAI、CAT等)。具体分类为:

1、 文字处理软件

文字处理软件是办公室和个人不可缺少的软件,它用于输入、存贮、编辑、打印文字材料。目前主要的中文文字处理软件有Word和WPS。

2、 电子表格数据处理软件

用于一些简单的数据表处理,如学校中的成绩处理、股市行情分析等,主要的软件有Excel和Lotus 1-2-3。

3、 信息管理软件

用于输入、存储、修改、检索各种信息,例如工资管理软件、人事管理软件、计划管理软件等。这种软件发展到一定水平后,各个单项的软件相互联系起来,计算机和管理人员组成一个和谐的整体,各种信息在其中合理地流动,形成一个完整、高效的管理信息系统,简称MIS。针对不同的部门、行业和需求,可以编制不同的MIS,也可以设计通用的MIS。

4、 辅助设计软件

用于高效地绘制、编辑工程图纸或电子线路图,进行设计中的常规计算,帮助人们寻求较好的设计方案,提高工作效率和质量。

5、 实时控制软件

主要用于需要随时收集数据,并以此为依据作出相应的判断和决策,按预定设计的方案实施自动或半自动控制,以保证安全、准确地完成指定任务。如:化工生产中的实时控制软件、火箭发射和运行中的自动控制等,针对不同的工作任务可以设计不同的实时控制系统。

6、 辅助教育软件

运用电子计算机进行教育活动是计算机应用的一个很重要的方面,有关教育方面的软件很多,主要分成五类:学校辅助教学类软件,主要针对各学科进行多媒体辅助教学,用于提高学生掌握知识的能力和水平;辅助教育管理类软件,如各种校长办公系统等;计算机辅助学习类软件;英语学习类软件,如各种背单词、练口语、考TOTEL软件等;商务类软件,如学炒股、学开车等。

教育软件涵盖范围越来越广,内容涉及学与学的各个领域、各个方面。技术上广泛采用多媒体、网络、虚拟现实、人工智能等先进技术。

7、 游戏娱乐软件

利用计算机高速的运算功能、良好的交互功能和清晰的显示能力,将游戏和娱乐内容制作成软件,供使用者在计算机上玩游戏和娱乐。

8、 网络上的各种工具包

例如浏览器、搜索引擎、电子邮件、文件下载工具等等。

举例:Office、Photoshop、Flash、IE、MediaPlayer、3D max、 游戏软件等等。

二、系统软件 : 系统软件是指负责管理、监控和维护计算机硬件和软件资源的一种软件。系统软件用于发挥和扩大计算机的功能及用途,提高计算机的工作效率,方便用户的使用。系统软件主要包括操作系统、程序设计语言及其处理程序(如汇编程序、编译程序、解释程序等)、数据库管理系统、系统服务程序以及故障诊断程序、调试程序、编辑程序等工具软件。如:操作系统(如DOS、Windows、UNIX、OS/2等)、语言编译和解释系统、程序设计语言(如汇编语言、BASIC、C、PASCAL等)、网络软件、数据库管理系统(如FoxBASE、Oracle等)、系统服务程序(如诊断程序等)。
具体分类为:

1、操作系统
管理计算机的硬件设备,使应用软件能方便、高效地使用这些设备。在微机上常见的有:DOS、WINDOWS、UNIX、OS/2等
2、数据库管理系统
有组织地、动态地存贮大量数据,使人们能方便、高效地使用这些数据。现在比较流行的数据库有FoxPro、DB-2、Access、SQL-server等
3、编译软件
CPU执行每一条指令都只完成一项十分简单的操作,一个系统软件或应用软件,要由成千上万甚至上亿条指令组合而成。直接用基本指令来编写软件,是一件极其繁重而艰难的工作。为了提高效率,人们规定一套新的指令,称为高级语言,其中每一条指令完成一项操作,这种操作相对于软件总的功能而言是简单而基本的,而相对于CPU的一眇操作而言又是复杂的。
用这种高级语言来编写程序(称为源程序)就象用预制板代替砖块来造房子,效率要高得多。但CPU并不能直接执行这些新的指令,需要编写一个软件,专门用来将源程序中的每条指令翻译成一系列CPU能接受的基本指令(也称机器语言)使源程序转化成能在计算机上运行的程序。完成这种翻译的软件称为高级语言编译软件,通常把它们归入系统软件。目前常用的高级语言有VB、C++、JAVA等,它们各有特点,分别适用于编写某一类型的程序,它们都有各自的编译软件。
系统软件:MacOS、Dos、Windows 98 、Windows 2000、Windows NT、 ORACLE、 Linux 等。