d:\sstd\start.jpg
d:\sstd\state.ico
本人用notepad创建文件,然后修改文件扩展名为PBR,在编译成功后,分别将d:\sstd\start.jpg与d:\sstd\state.ico删除,为什么执行文件运行后还是找不着这两个文件呢。然后发布时还要附带这两个文件吗?要是那样那PBR拿了干吗用呢。请高手指点。
5 个解决方案
#1
编译时用相对路径
..\sstd\start.jpg
..\sstd\state.ico
..\sstd\start.jpg
..\sstd\state.ico
#2
pbr 就是没用
#3
不会啊
我的程序中编译的时候就是使用PBR的,不管是绝对路径还是相对路径,编译后资源文件都打包了。
你可能的问题
1、编程和资源文件中要使用相同的路径,绝对就都绝对,相对就都相对。
2、你在生成的时候project的选项是不是有错误。
我的程序中编译的时候就是使用PBR的,不管是绝对路径还是相对路径,编译后资源文件都打包了。
你可能的问题
1、编程和资源文件中要使用相同的路径,绝对就都绝对,相对就都相对。
2、你在生成的时候project的选项是不是有错误。
#4
请参考"PB HOME"斑竹的一篇文章:
http://pbhome.net/bbs/bbs.asp?titleid=43&forumid=1
举个例说明吧!
如:
应用:a包括两个库a.pbl和b.pbl路径分别为c:\a\a.pbl、c:\a\a.b.pbl;
资源文件:a.pbr内容为c:\a\a.ico(这是绝对路径)
在a.pbl里面使用图标:c:\a\a.ico(必须和a.pbr的内容相符)
编译的时候生成a.exe、a.dll、b.dll(a.pbr打包于a.exe)
这样,再加上必要的PB动态连接库,放在任何机器的任何路径上运行都应该没有问题!
但是,在对b.pbl做升级时把源代码改放在文件夹c:\a\a中来做(当然,c:\a中的相关文件必须复制到c:\a\a中),就必须修改a.pbr内容为c:\a\a\a.ico,同时修改a.pbl里面使用的图标为c:\a\a\a.ico
编译后,将b.dll覆盖原来的b.dll,那么b.dll中需要显示的图标就显示不出来了,如果全部文件(包括a.exe、a.dll、b.dll)都覆盖,就不会了,这就是绝对路径带来的麻烦!
如果源代码一直放在c:\a中编辑,这个麻烦可以避免,使用相对路径确实没有这个麻烦!
但是,使用相对路径时,情况反过来的话(第一次在c:\a\a,第二次在c:\a中编辑),第二次编辑时使用原来的图标文件(即将原来的指向改为a\a.ico),麻烦继续存在!
个中原理,比较复杂,因为有很多资料可以查,我就不做赘述!
http://pbhome.net/bbs/bbs.asp?titleid=43&forumid=1
举个例说明吧!
如:
应用:a包括两个库a.pbl和b.pbl路径分别为c:\a\a.pbl、c:\a\a.b.pbl;
资源文件:a.pbr内容为c:\a\a.ico(这是绝对路径)
在a.pbl里面使用图标:c:\a\a.ico(必须和a.pbr的内容相符)
编译的时候生成a.exe、a.dll、b.dll(a.pbr打包于a.exe)
这样,再加上必要的PB动态连接库,放在任何机器的任何路径上运行都应该没有问题!
但是,在对b.pbl做升级时把源代码改放在文件夹c:\a\a中来做(当然,c:\a中的相关文件必须复制到c:\a\a中),就必须修改a.pbr内容为c:\a\a\a.ico,同时修改a.pbl里面使用的图标为c:\a\a\a.ico
编译后,将b.dll覆盖原来的b.dll,那么b.dll中需要显示的图标就显示不出来了,如果全部文件(包括a.exe、a.dll、b.dll)都覆盖,就不会了,这就是绝对路径带来的麻烦!
如果源代码一直放在c:\a中编辑,这个麻烦可以避免,使用相对路径确实没有这个麻烦!
但是,使用相对路径时,情况反过来的话(第一次在c:\a\a,第二次在c:\a中编辑),第二次编辑时使用原来的图标文件(即将原来的指向改为a\a.ico),麻烦继续存在!
个中原理,比较复杂,因为有很多资料可以查,我就不做赘述!
#5
学习
#1
编译时用相对路径
..\sstd\start.jpg
..\sstd\state.ico
..\sstd\start.jpg
..\sstd\state.ico
#2
pbr 就是没用
#3
不会啊
我的程序中编译的时候就是使用PBR的,不管是绝对路径还是相对路径,编译后资源文件都打包了。
你可能的问题
1、编程和资源文件中要使用相同的路径,绝对就都绝对,相对就都相对。
2、你在生成的时候project的选项是不是有错误。
我的程序中编译的时候就是使用PBR的,不管是绝对路径还是相对路径,编译后资源文件都打包了。
你可能的问题
1、编程和资源文件中要使用相同的路径,绝对就都绝对,相对就都相对。
2、你在生成的时候project的选项是不是有错误。
#4
请参考"PB HOME"斑竹的一篇文章:
http://pbhome.net/bbs/bbs.asp?titleid=43&forumid=1
举个例说明吧!
如:
应用:a包括两个库a.pbl和b.pbl路径分别为c:\a\a.pbl、c:\a\a.b.pbl;
资源文件:a.pbr内容为c:\a\a.ico(这是绝对路径)
在a.pbl里面使用图标:c:\a\a.ico(必须和a.pbr的内容相符)
编译的时候生成a.exe、a.dll、b.dll(a.pbr打包于a.exe)
这样,再加上必要的PB动态连接库,放在任何机器的任何路径上运行都应该没有问题!
但是,在对b.pbl做升级时把源代码改放在文件夹c:\a\a中来做(当然,c:\a中的相关文件必须复制到c:\a\a中),就必须修改a.pbr内容为c:\a\a\a.ico,同时修改a.pbl里面使用的图标为c:\a\a\a.ico
编译后,将b.dll覆盖原来的b.dll,那么b.dll中需要显示的图标就显示不出来了,如果全部文件(包括a.exe、a.dll、b.dll)都覆盖,就不会了,这就是绝对路径带来的麻烦!
如果源代码一直放在c:\a中编辑,这个麻烦可以避免,使用相对路径确实没有这个麻烦!
但是,使用相对路径时,情况反过来的话(第一次在c:\a\a,第二次在c:\a中编辑),第二次编辑时使用原来的图标文件(即将原来的指向改为a\a.ico),麻烦继续存在!
个中原理,比较复杂,因为有很多资料可以查,我就不做赘述!
http://pbhome.net/bbs/bbs.asp?titleid=43&forumid=1
举个例说明吧!
如:
应用:a包括两个库a.pbl和b.pbl路径分别为c:\a\a.pbl、c:\a\a.b.pbl;
资源文件:a.pbr内容为c:\a\a.ico(这是绝对路径)
在a.pbl里面使用图标:c:\a\a.ico(必须和a.pbr的内容相符)
编译的时候生成a.exe、a.dll、b.dll(a.pbr打包于a.exe)
这样,再加上必要的PB动态连接库,放在任何机器的任何路径上运行都应该没有问题!
但是,在对b.pbl做升级时把源代码改放在文件夹c:\a\a中来做(当然,c:\a中的相关文件必须复制到c:\a\a中),就必须修改a.pbr内容为c:\a\a\a.ico,同时修改a.pbl里面使用的图标为c:\a\a\a.ico
编译后,将b.dll覆盖原来的b.dll,那么b.dll中需要显示的图标就显示不出来了,如果全部文件(包括a.exe、a.dll、b.dll)都覆盖,就不会了,这就是绝对路径带来的麻烦!
如果源代码一直放在c:\a中编辑,这个麻烦可以避免,使用相对路径确实没有这个麻烦!
但是,使用相对路径时,情况反过来的话(第一次在c:\a\a,第二次在c:\a中编辑),第二次编辑时使用原来的图标文件(即将原来的指向改为a\a.ico),麻烦继续存在!
个中原理,比较复杂,因为有很多资料可以查,我就不做赘述!
#5
学习