如何在PB中设置相对路径?

cjh211 2001-09-29 05:22:13
...全文
422 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
samchung 2001-09-30
  • 打赏
  • 举报
回复
对了,应该用GetModuleFileNameA()
对取回的全路径文件名替掉执行程序的文件名后就是你的当前目录了
程序里可以定义一个全局的目录变量,并在程序入口就把值赋给它就行了
samchung 2001-09-30
  • 打赏
  • 举报
回复
对了应该用GetModuleFileNameA()
对取回的文件位后替掉文件名后就是你的当前目录了
程序里可以定义一个全局的

cjh211 2001-09-30
  • 打赏
  • 举报
回复
就是我的程序安装后,找不到有些文件了。
想在程序中设置相对路径,不管安装到哪个目录下都可以呀。
eastseaofdragon 2001-09-30
  • 打赏
  • 举报
回复
why
xt222 2001-09-29
  • 打赏
  • 举报
回复
up
不过里面的string参数要先加space
ls_path=space(100)
norzss 2001-09-29
  • 打赏
  • 举报
回复
我想说明一点:
如果是用GetCurrentDicrectoryA()这个api函数
当创建乐快捷方式的时候,通过快捷方式运行的时候将会出现错误的结果(因为此时得到的是快捷方式所在的目录,而不是应用程序所在的目录)
可以用这个api替代:GetModuleFileNameA()
samchung 2001-09-29
  • 打赏
  • 举报
回复
是不是想在你程序所在目录下再建目录或存东西?

local extenal function声明
Function ulong GetCurrentDirectoryA(ulong nBufferLength,ref string lpBuffer) Library "kernel32.dll"
在程序里面用
string ls_Buffer
ls_Buffer=Space(255)
IF GetCurrentDirectoryA(255,ls_Buffer)=0 THEN SetNull(ls_Buffer)
ls_Buffer为当前程序路径

创建目录 : Function boolean CreateDirectoryA(string lpPathName,string lpSecurityAttributes) Library "kernel32.dll"

删除目录 : Function boolean RemoveDirectoryA(string lpPathName) Library "kernel32.dll"
daysafter 2001-09-29
  • 打赏
  • 举报
回复
学习
daysafter 2001-09-29
  • 打赏
  • 举报
回复
学习
三杯倒 2001-09-29
  • 打赏
  • 举报
回复
\pathname
NetColorWolf 2001-09-29
  • 打赏
  • 举报
回复
你想做什么?
什么意思?

1,079

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder 相关问题讨论
社区管理员
  • 基础类社区
  • WorldMobile
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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