如何取得Windows的安装目录?

cmain83 2003-07-20 10:23:27
在程序中如何取到Windows安装在哪个目录?
...全文
83 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
procedure TForm1.Button1Click(Sender: TObject);
var
WinDir: array[0..MAX_PATH] of char; // holds the Windows directory
begin
{retrieve the Windows directory...}
GetWindowsDirectory(WinDir, MAX_PATH);

{...and display it}
Label1.Caption := StrPas(WinDir)
end;

procedure TForm1.Button1Click(Sender: TObject);
var
SysDir: array[0..MAX_PATH] of Char; // holds the system directory
begin
{retrieve the system directory and display it}
GetSystemDirectory(SysDir, MAX_PATH);
Label1.Caption := StrPas(SysDir)
end;
DelphiBoy2003 2003-07-21
  • 打赏
  • 举报
回复
GetWindowsDirectory就是获得windows的安装目录的函数。
firetoucher 2003-07-21
  • 打赏
  • 举报
回复
The GetWindowsDirectory function retrieves the path of the Windows directory. The Windows directory contains such files as applications, initialization files, and help files.

UINT GetWindowsDirectory(
LPTSTR lpBuffer, // buffer for Windows directory
UINT uSize // size of directory buffer
);
李_军 2003-07-21
  • 打赏
  • 举报
回复
var
s:Pchar;
begin
GetMem(s,255);
GetWindowsDirectory (s);
FreeMem(s,255);
end;
cnssk 2003-07-21
  • 打赏
  • 举报
回复
哦!晚了一步
cnssk 2003-07-21
  • 打赏
  • 举报
回复
getwindowsdir
WWWWA 2003-07-21
  • 打赏
  • 举报
回复
var s1,s2,s3:array[1..40] of char;z1,z2:string;
begin
getwindowsdirectory(@s1,40);
getsystemdirectory(@s2,40);
z1:=trim(s1);
z2:=trim(s2);
showmessage(z1);
showmessage(z2);
cmain83 2003-07-21
  • 打赏
  • 举报
回复
不可能没人知道吧
NSIS安装包制作教程 分为三个目录:基础,插件,脚本 NSIS System 插件 NSIS VPatch 3.1插件 NSIS InstallOptions 2 插件 NSIS Modern UI(新式用户界面)插件 NSIS的Modern UI插件 NSIS里特殊符号的表达方法 两组件互斥 NSIS 常用小问题合集 资源替换式的美化包制作方式代码 安装完毕后如何刷新文件关联 教你如何编程调用 NSIS 的插件 NSIS安装程序概要 实现 NSIS 自定义页面中的控件操作代码 如何使用NSIS实现多目录安装设置 如何用NSIS在加入注册表 用NSIS 制作自己的安装程序 bluewind 的 wmp9 nsis安装脚本 NSIS安装脚本简明教程 取得winamp的NSIS脚本的教程 迅雷5.7.3.389 AYU增强版的安装脚本 NSIS制作迅雷安装的脚本 迅雷5.7.2.371 DDR1.5版去广告版源代码说明 NSIS删除安装程序自身 帮助文件中关于静默安装的说明 NSIS实现静默安装的两种方法 nsis的附加任务代码 关于 NSIS 写入注册表的问题 少轻狂制作的Windows优化大师的安装脚本 aipc编写的nsis极点安装脚本 官方 NSIS 插件全集 全方位掌握NSIS的使用 NSIS语言里怎样安装一个.inf文件? 如果要关联某个文件给程序应该怎么做? 如何避免显示解压缩进度框? 关于检测操作系统的问题 在结束页面添加运行程序选项 NSIS的botton二选一如何实现? NSIS灵活应用用逻辑库 NSIS调用inf安装驱动后的卸载问题 NSIS的组件互斥代码 在NSIS中如何禁止一个组件组的父项的点击事件 关于打破 NSIS 的 8192 字节限制的更简单方法 NSIS 自定义页面结合组件选择安装 一个关于组件跟自定义页面的控制问题 如何把安装的卸载程序放到其他目录
Linux操作系统入门书,比较全面 目录 0 前言 0.1 什么是Linux? 0.2 本手册概述 0.3 速查信息 0.4 从以前版本的Red Hat Linux升级 0.5 开发者的话 0.6 编者的话 1 Red Hat Linux 5.1新特性 1.1 安装性能的提高 1.1.1 改进的安装指南 1.1.2 网络性能的提高 1.1.3 简化的安装 1.1.4 启动盘的创建 1.1.5 国际化 1.1.6 'fstab editor'功能 1.1.7 恢复SMB安装模式 1.2 系统管理性能的提高 1.2.1 Linuxconf 1.2.1.1 提供基于Web的Linuxconf访问 1.2.2 改进了急救盘 1.2.3 Initscript档案 1.3 其他新特性 1.3.1 视窗管理性能的提高 1.3.2 新的编译技术egcs 1.3.3 替代xv的新工具 2 开始之前 2.1 取得说明书 2.2 取得正确的Red Hat Linux部件 2.2.1 盒装Red Hat Linux清单 2.2.1.1 安转指南 2.2.1.2 Alpha安装附录 2.2.1.3 CD1和2 2.2.1.4 Linux Vending Machine CD 2.2.1.5 启动软盘 2.2.1.6 许可证和注册信息 2.2.2 缺少东西吗? 2.2.3 没有盒装吗?没关系! 2.2.4 检查修改过的Diskette Images 2.3 你必须知道的事情 2.3.1 基本的硬件配置 2.3.1.1 用Windows® 95了解你的硬件 2.3.2 显示配置 2.3.3 关于网络的信息 2.4 安装的方式 2.4.1 安装过程中PCMCIA的支持 2.4.2 从CD-ROM安装 2.4.2.1 如何做 2.4.3 从FTP站点安装 2.4.3.1 如何做 2.4.4 从NFS服务器安装 2.4.4.1 如何做 2.4.5 从SMB共享卷安装 2.4.5.1 如何做 2.4.6 从硬盘安装 2.4.6.1 如何做 2.5 是否需要支持软盘? 2.6 硬盘分区 2.6.1 分区的命名设计 2.6.2 重新分区的策略 2.6.2.1 用未分区的空闲空间 2.6.2.2 用未使用分区的空间 2.6.2.3 用活跃分区的空闲空间 2.6.3 硬盘分区和其他操作系统 2.6.4 最后的技巧:使用LILO 2.6.4.1 BIOS相关的限制会影响LILO 2.6.5 多少分区? 2.7 关于内核驱动器 2.8 如果你有问题... 2.9 最后的注意点 3 开始安装 3.1 安装程序的用户界面 3.1.1 用键盘导航 3.1.2 关于虚拟控制台 3.2 开始安装程序 3.2.1 启动安装程序 3.3 开始安装 3.3.1 选择一种语言 3.3.2 选择一种键盘方式 3.3.3 PCMCIA支持 3.4 选择一种安装方式 3.4.1 从CD-ROM安装 3.4.2 通过NFS安装 3.4.3 网络驱动器设置 3.4.4 设置TCP/IP网络 3.4.5 NFS服务器信息 3.4.6 从硬盘安装 3.4.7 通过FTP安装 3.4.8 通过SMB安装 4 继续安装 4.1 升级或安装 4.1.1 安装 4.1.2 升级 4.2 SCSI支持 4.3 为Red Hat Linux创建分区 4.3.1 使用Disk Druid 4.3.1.1 'Current Disk Partitions'区域 4.3.1.2 'Drive Summaries'区域 4.3.1.3 Disk Druid的按钮 4.3.1.4 快捷键 4.3.1.5 增加一个分区 4.3.1.6 删除一个分区 4.3.1.7 编辑一个分区 4.3.1.8 增加一个NFS Mount 4.3.1.9 重新开始 4.3.1.10 结束之后... 4.3.2 使用fdisk 4.3.2.1 fdisk概述 4.3.2.2 修改分区表 4.3.3 文件系统配置 4.3.3.1 增加一个NFS Mount 4.4 初试化交换空间 4.5 仅对FTP安装... 4.6 仅对SMB安装... 4.7 仅对硬盘安装... 4.8 分区格式化 4.9 选择和安装包 4.9.1 选择部件 4.9.2 选择单独的包 4.9.2.1 取得关于包的信息 4.9.3 包的相关性 4.9.4 包的安装 5 结束安装 5.1 配置鼠标 5.2 配置X Windows 5.2.1 配置XFree86服务器 5.3 配置网络 5.3.1 网络配置对话 5.4 配置时钟 5.5 选择重启动时启动的Services 5.6 配置打印机 5.6.1 本地打印机 5.6.2 远程lpd打印机 5.6.3 LAN Manager打印机 5.6.4 结束打印机设置 5.7 设置启动口令 5.8 制作启动盘 5.9 安装LILO 5.9.1 为LILO启动命令行增加选项 5.9.2 LILO的替代者 5.10 完成... 6 现在干什么? 6.1 获取适合你的文档 6.1.1 针对Linux初学者的文档 6.1.2 针对更有经验的Linux用户的文档 6.1.3 针对Linux高手的文档 6.2 基本的系统任务 6.2.1 启动你的Red Hat Linux系统 6.2.2 登录和退出 6.2.2.1 登录 6.2.2.2 退出 6.2.3 帐号和口令 6.2.3.1 帐号 6.2.3.2 口令 6.2.3.3 su命令 6.2.4 关闭你的Red Hat Linux系统 6.3 X Window系统 6.3.1 如果你还没用安装X 6.3.1.1 XFree86配置 6.3.2 如果你已经安装X 6.3.2.1 手工启动X 6.3.2.2 自动启动X 6.3.2.3 改变你的桌面 6.3.2.4 基于X的快捷工具 6.4 为你的Red Hat Linux系统配置声音 6.4.1 模块化的声音驱动器 6.4.1.1 支持的声效卡 6.4.2 声效卡配置工具 6.5 鼠标配置 6.6 万维网 6.6.1 万维网浏览器 6.6.2 万维网服务器 7 寻找文档 7.1 在线帮助 7.1.1 Man Pages 7.1.1.1 如何阅读Man Page 7.1.2 包的文档 7.1.3 HOWTO和FAQ 7.1.4 'locate'命令 7.1.5 'info'页 7.2 从因特网得到帮助 7.2.1 Red Hat邮件列表 7.2.2 USENET新闻组 7.2.2.1 Red Hat特定的新闻组 8 用RPM进行软件包管理 8.1 RPM设计目标 8.2 使用RPM 8.2.1 安装 8.2.1.1 已经安装的包 8.2.1.2 文件冲突 8.2.1.3 未解决的依赖关系 8.2.2 卸载 8.2.3 升级 8.2.4 查询 8.2.5 验证 8.3 令人惊异的RPM 8.4 其他的RPM资源 9 控制面板 9.1 配置用户和用户组 9.2 配置文件系统 9.2.1 增加网络文件系统的安装 9.3 打印机配置 9.4 网络配置 9.4.1 操纵名字 9.4.2 操纵主机 9.4.3 增加网络接口设备 9.4.3.1 PPP接口 9.4.3.2 SLIP接口 9.4.3.3 PLIP接口 9.4.3.4 Ethernet, Arcnet, Token Ring和Pocket适配器接口 9.4.4 设置路由 9.5 时间和日期 9.6 内核守护进程配置 9.6.1 改变模组选项 9.6.2 改变模组 9.6.3 增加模组 9.6.4 重起动kerneld 10 Glint 10.1 启动glint 10.2 显示软件包 10.2.1 上下文相关菜单 10.2.2 选择软件包 10.2.3 查看可用软件包 10.3 配置 10.4 操纵软件包 10.4.1 查询软件包 10.4.2 校验软件包 10.4.3 安装新的软件包 10.4.3.1 升级软件包 10.4.4 卸载软件包 11 系统管理 11.1 用户,组和私有用户组 11.1.1 标准用户 11.1.2 标准用户组 11.1.3 私有用户组 11.1.3.1 私有用户组基本原理 11.2 基于PAM用户认证 11.2.1 PAM模块 11.2.2 服务 11.2.3 配置文件 11.2.4 影子口令 11.2.5 更为详尽的信息 11.3 影子工具 11.4 创建定制的核心 11.4.1 创建模组化的内核 11.4.2 创建initrd映相像 11.4.3 创建单一的核心 11.5 Sendmail 11.6 控制对服务的访问 11.7 匿名FTP 11.8 NFS配置 11.8.1 安装NFS文件系统 11.8.2 输出NFS文件系统 11.9 Boot, Init和Shutdown 过程的描述 11.9.1 有关Sysconfig的信息 11.9.1.1 /etc/sysconfig下面的文件 11.9.1.2 /etc/sysconfig/network-scripts中的文件 11.9.2 系统 V 的Init过程 11.9.3 Init Runlevels 11.9.4 Initscript工具 11.9.5 启动时运行级 11.9.6 关闭 11.10 紧急救护模式 11.10.1 通过LILO 11.10.2 应急Boot盘组 11.10.2.1 一个小窍门儿 A 取得技术支持 A.1 支持政策概述 A.2 取得支持 A.3 支持常见问题 B 制作安装软盘 B.1 在MS-DOS下制作软盘 B.2 在类Linux-like操作系统下制作软盘 C 包清单 C.1 应用 C.1.1 通讯 C.1.2 数据库 C.1.3 编辑器 C.1.4 模拟器 C.1.5 工程 C.1.6 图形 C.1.7 邮件 C.1.8 数学 C.1.9 网络 C.1.10 新闻 C.1.11 项目 C.1.12 出版 C.1.13 声音 C.2 基础 C.2.1 内核 C.3 管理 C.4 开发 C.4.1 创建 C.4.2 创建 C.4.3 调试 C.4.4 语言 C.4.5 库 C.4.6 工具 C.4.7 版本控制 C.5 文档 C.6 扩展 C.6.1 日语 C.7 游戏 C.8 库 C.9 网络 C.9.1 管理 C.9.2 工具 C.9.3 新闻 C.9.4 工具 C.10 外壳 C.11 工具 C.11.1 存档 C.11.2 控制台 C.11.3 文件 C.11.4 打印 C.11.5 系统 C.11.6 终端 C.11.7 文本 C.12 X11 C.12.1 娱乐 C.12.2 应用 C.12.3 游戏 C.12.4 库 C.12.5 外壳 C.12.6 工具 C.12.7 窗口管理 C.12.8 XFree86 C.12.9 gnome D 通用参数 D.1 CD-ROM参数 D.2 SCSI参数 D.3 Ethernet参数 E Red Hat Linux常见问题 E.1 介绍 E.2 勘误表 E.3 联系Red Hat Software E.4 一般资源列表 E.5 一般问题 E.5.1 我如何得到新版本的Red Hat? E.5.2 我如何报告错误? E.5.3 Red Hat Linux是否包含源代码? E.6 安装 E.6.1 我有一个空的硬盘, 并想安装DOS或Windows 95和Linux. 最好的方法是什么? E.6.2 我没有CD-ROM, 也不能从网上安装. 是否有其他方法? E.6.3 我想制作新的软盘, 该如何做? E.6.4 我有一个IDE系统, 而我不知道和DOS相比, Linux是如何设置硬盘的. 您能解释一下吗? E.6.5 我的cdu31a/33a CD-ROM不能被识别, 怎么办? E.6.6 我在笔记本电脑上安装Linux时遇到困难. E.6.7 我想把我的Red Hat系统升级到5.x, 但是它说它不能找到有效的RPM数据库. 我需要做什么? E.6.8 我有一个Adaptec 2920. 在安装时, 我没有看到可以选择它, 为什么? 我该怎么办. 或者我有一个Future Domain TMC-3260,但是我为它指定选项用来检测时, 它在安装时不能被发现. E.6.9 我有一个带aic7xxx芯片(2940, 2840, 2740, 3940, 等)的Adaptec卡. 它是很普通的, 为什么Red Hat Linux不能完全支持它? E.6.10 在安装时, 我得到致命信号 11 或 7. 这是什么意思? 我该做什么? E.6.11 在安装时, Linux无法工作在我的Ultra DMA IDE驱动器和主机板上, 怎么办? E.6.12 我的机器有一个PCI Ultra DMA 控制器. 我可以安装Linux吗? E.6.13 我有NT, 并想安装Linux, 但我听说启动多操作系统会出现问题. 我如何避免它? E.6.14 我不能在系统的1023柱面下安装Linux, 我该怎么办? E.6.15 我想把LILO从我的机器的MBR中移去, 如何做? E.6.16 我想把Linux从我的硬盘中删除. 我使用DOS的fdisk, 它显示出非DOS分区, 但不能删除. 怎么办? E.6.17 我安装Linux时没有遇到错误, 但是在重启动时, 我只能得到L, LI 和其他一个项目. 为什么? E.7 使用Red Hat Linux E.7.1 我不能运行我编译的任何程序, 因为 我得到一个"command not found"出错信息. 我在目录里看到了这个命令, 但不能运行. E.7.2 我在运行ls时, 为什么看不到彩色? E.8 X Windows E.8.1 我听说XFree86有新的版本, 我如何安装它? 或者, 我需要安装最新版本的XFree86, 因为旧版本不支持我的显示卡. 我如何安装它? E.8.2 当我用startx命令启动X时, 我得到一个出错信息说没有安装服务器, 并回到提示符. 哪里出错了? E.8.3 当我启动X时, 我只看到灰色的背景和一个X光标. E.8.4 我如何客户化X窗口管理器? E.8.5 我不喜欢想Windows 95那样的配置, 我如何改变它? E.8.6 我得到一个错误errno=111. 那是什么意思? 我该做什么? E.8.7 我的键盘对照在X中不能正确工作. 怎么办? E.8.8 我得到一个出错信息libX can't be opened. 或者, 我因为缺少库, 无法编译X程序. E.8.9 我有一个AGP显示卡. 它是否被支持? E.8.10 我的计算机有一个NeoMagic 显示卡芯片组, 我可以用X吗? E.8.11 我从4.1(或更早)升级, 现在启动X时, 机器在一个灰色屏幕上吊死. E.8.12 当我运行netscape, 色彩似乎不对, 或者得到关于色彩的出错信息. E.8.13 我有一个微软串口鼠标, Linux不能使用它. 怎么办? E.9 系统管理 E.9.1 当我用usercfg创建用户, 他们不能登录. E.9.2 什么是PAM? 为什么要用它? E.9.3 我如何在我的Linux系统上设置Secure Shell (SSH)? E.9.4 为什么Linux只能看到我的内存的一部分? E.9.5 我的奔腾或更高档的机器有超过64M的内存, 但是它似乎很迟钝. 如果我用mem=64M让Linux只用64M内存, 速度似乎加快了. 这是怎么回事? 我该做什么? E.9.6 我有Red Hat 5.0, 并且升级了erratal列出的ld.so包, 但是我的libc5应用仍然出错. 为什么? E.9.7 当我运行fstool时, 我得到一个信息说一个分区似乎已经被删除, 问我是否把它从/etc/fstab移去. E.9.8 我如何在Linux下配置我的Jaz drive ? E.9.9 我如何使用我的并口zip drive? E.9.10 我无法使我的IDE zip drive工作. E.9.11 我的一些旧的应用程序得到错误的时间. E.9.12 我已升级了所有安装的程序, 但我的程序仍然得到错误的时间. E.9.13 安装时, 没有要我使用第二个CD-ROM. 当我用它使用X程序glint时, 报告没有RPMS包, 但是我在目录里看到很多包, 怎么办? E.9.14 Linux认识我的CDROM, 但当我mount 它时, 我得到"mount failed", 怎么办? E.9.15 我把Linux安装在一个IDE硬盘, 但我需要从软盘启动. 我如何从安装软盘启动? E.9.16 我不能使即查即用设备工作. E.9.17 当系统启动时, 我看到一条信息说我有一个不认识的PCI硬件. 这是什么意思? E.9.18 现在系统启动时, LILO默认运行Linux. 我想启动其他操作系统. 我怎么做? E.9.19 我需要使用急救模式编辑一个文件. 编辑器说不知道窗口类型. 我如何编辑一个文件? E.10 网络管理 E.10.1 Linux不能识别我的NE2000兼容网卡. E.10.2 我安装了Linux, 它似乎能启动. 但是, 当我调用sendmail时机器似乎死机了. 发生了什么事? 我该怎么办? E.10.3 我升级到了5.0, 而sendmail不能想从前那样发送邮件了. 怎么回事? E.10.4 我安装了Linux, 重编译了内核, 现在网络出现没有找到net-pf模块的错误. 怎么办? E.10.5 我如何配置因特网PPP连接? E.10.6 我如何允许非root用户启动PPP连接? E.10.7 我的系统一直它的网关信息. E.11 打印机管理 E.11.1 我在设置打印机时遇到了问题. 我的打印机没有在打印机配置工具中列出. E.11.2 我有一台Canon BJC打印机, 它不能正常打印. E.11.3 当我打印时, 输出的行都切去了头. E.12 附录[sic] E.12.1 Red Hat FTP站非常慢. 是否有镜像站点? F Red Hat Linux/SPARC的特别信息 F.1 支持的硬件 F.2 安装概述 F.3 控制台命令 F.4 基于Ramdisk的安装标准 F.5 选择启动方式 F.6 选择安装方式 F.7 用一个串行终端安装 F.8 安装: 选择系统部件 F.9 SILO配置 F.10 分区 F.11 X 窗口 G.Linux服务社产品清单

5,392

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧