ufo! 或者懂INNO-SETUP的请进来看下(31)

  • 主题发起人 主题发起人 terry_zhou82
  • 开始时间 开始时间
T

terry_zhou82

Unregistered / Unconfirmed
GUEST, unregistred user!
http://www.delphibbs.com/delphibbs/dispq.asp?lid=3949268这个是原帖,问题解决了。但是现在又有个新问题,我的程序是开机就在后台,也就是任务栏启动的。开机后,双击任务栏,也会提示找不到数据库的问题,我该怎么弄啊?
 
我来顶一下,有谁知道吗?
 
为一劳永逸,建议你在程序初始化时候调用一下SetCurrentDirectory(PChar(ExtractFilePath(Application.ExeName)));或者数据库用完整路径连接。
 
SetCurrentDirectory(PChar(ExtractFilePath(Application.ExeName)));是要加在ONCREATE事件中吗?具体改怎么写啊?我的代码如下Database1.DatabaseFileName := ExtractFilePath(Application.ExeName) + DataBaseFileName; Database1.DatabaseName:=DataBaseFileName; Table1.DatabaseName:=ABSDatabase1.DatabaseName; Table1.TableName :='rd'; Table1.Open;end;
 
UFO! 大哥,可以进来看一下吗?
 
Database1.DatabaseName:=DataBaseFileName;这个改为 Database1.DatabaseName:= ExtractFilePath(Application.ExeName) + DataBaseFileName;试试看。另外 SetCurrentDirectory(PChar(ExtractFilePath(Application.ExeName)));写在 主窗体的 ONCREATE 事件里面就可以了。
 
ufo! 好像还是不行,这个是我的代码,您看看那里有问题?procedure TForm1.Connect_DB;beginif fileexists(DataBaseFileName) thenbegin Database1.DatabaseFileName := ExtractFilePath(Application.ExeName) + DataBaseFileName; Database1.DatabaseName:= ExtractFilePath(Application.ExeName) + DataBaseFileName; Table1.DatabaseName:=Database1.DatabaseName; Table1.TableName :='rd'; Table1.Open;setCurrentDirectory(PChar(ExtractFilePath(Application.ExeName)));endelse begin MessageBox(0,'数据库载入出错,可能被移动或者删除!','警告',MB_OK or MB_ICONWARNING); application.Terminate ; end; end;我用INNO-SETUP打包好像就是不行。
 
把setCurrentDirectory(PChar(ExtractFilePath(Application.ExeName)));放到Connect_DB过程的最前面
 
接受答案了.
 
后退
顶部