当前位置: 首页 > article >正文

DELPHI得到文件路径的方法

DELPHI得到文件路径的方法

方法一:只能到文件夹

uses FileCtrl;{记得要先引用这个}

var
  Dir: string;
begin
  SelectDirectory('选择你要 XXOO 的目录', '', Dir);
  ShowMessage('你选择了这个目录来 XXOO '+ Dir);
end;


方法二:
用opendialog,和savedialog的filename可以得到.
var
    path_name:string;//带文件名的路径
begin
    if   opendialog1.execute   then
        path_name:=opendialog1.filename;
end;  
//------------------------------------------------

if   opendialog1.execute   then
begin
//获得打开文件的路径
    filepath   :=   extractfilepath(opendialog1.filename);
//其他你的代码

end;

if   savedialog1.execute   then
begin
//获得保存文件的路径
    filepath   :=   extractfilepath(opendialog1.filename);
//其他你的代码
end;

------------------------------------------------------------------


都知道用ExtractFilePath来提取Exe文件的全部路径。

而ExtractFileDir与ExtractFilePath的区别就是少一个‘/’

嘿嘿,如ExtractFilePath( 'C:/TEST/MYPROG.EXE ')得到的就是C:/TEST/

ExtractFileDir( 'C:/TEST/MYPROG.EXE ')得到的就是C:/TEST

以上是题外话……   ^_^

可能大家都用这个:

ExtractFilePath(Application.ExeName)

来提取可执行文件的路径。

但是用Application就得Uses   Forms……

最近正好发现一招。用ParamStr(0)

delphi帮助上如下写:

ParamStr(0)   returns   the   path   and   file   name   of   the   executing   program   (for   example,   C:/TEST/MYPROG.EXE).

ExtractFilePath(ParamStr(0))与ExtractFilePath(Application.ExeName)等价。

而且在system.pas定义的。

而且里面如下操作的:

if   Index   =   0   then
    SetString(Result,   Buffer,   GetModuleFileName(0,   Buffer,   SizeOf(Buffer)))

哦,使用的是GetModuleFileName这个Api函数。

好了,到此为止继续查看Msdn有关GetModuleFileName之后。我明白并写下如下:

因为system.pas不用uses任何文件,得到exe文件所在路径ExtractFilePath(ParamStr(0))

以及Api函数GetModuleFileName的一些东西。。。。。

http://www.lryc.cn/news/2415886.html

相关文章:

  • php 转义反绡线,PHP汉字转拼音
  • 世上最全的map集合体系的使用方法---喜欢请收藏
  • rgba8888什么含义
  • 通信概念GSM和TETRA术语
  • 七大免费杀毒软件
  • 怎么注册tk域名_全面剖析tk免费域名注册
  • 攻防世界 Misc高手进阶区 4分题 Hidden-Message
  • 少年三国志礼包兑换码大全
  • PL/SQL Initialization error Could not initialize 问题
  • 驱动开发之 键盘过滤驱动_声明驱动的开发
  • cruzer php sandisk 闪迪u盘量产工具_sandisk量产工具(闪迪U盘量产工具)
  • [C#]TextBox的使用
  • 解析DXF图形文件格式
  • In .net Class and Struct
  • 数据挖掘在人口统计分析中的应用
  • 关于手动脱壳的分析及方法总结
  • Nginx系列(一):基本概念及安装
  • SpringBoot中Jersey的配置与相关注解
  • 点击a链接导航
  • B2B2C虚拟物流铺货软件研发(APP+H5)
  • 九阳真经
  • Exynos4412启动介绍:BL1是8k还是15k
  • 托盘区图标操作(NOTIFYICONDATA)
  • GB与BIG5内码转换COM原代码
  • SSL加速卡的使用,对HTTPS 七层负载机的性能提升
  • uushare.com 增加了小组(群)功能
  • 宁选“范跑跑”,不要“郭跳跳”
  • C++速览之命名空间(名字空间)
  • 元素周期表排列的规律_元素周期表元素口诀和排列规律(5)
  • LNMP环境中phpadmin配置文档