报错 invalid directory 怎么解决

hzm_michael 2014-05-08 09:38:01
我用OpenDialog打开一个DB文件 在StringGrid中显示 程序编译成功后 选择了文件后提示invalid directory 非法目录? 为什么 与中文路径有关么?
...全文
1596 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
hzm_michael 2014-05-09
  • 打赏
  • 举报
回复
EEData1是TTable 控件的名称 后面的TableName是TTable的属性名
hzm_michael 2014-05-09
  • 打赏
  • 举报
回复
引用 4 楼 draculamx 的回复:
EEData1->TableName=OpenDialog1->FileName; EEData1是一个什么控件??如果是db的数据库文件的话,不应该是 DataBase 这种类似的名字么?? 你这里后面是一个 TableName,是不是应该为数据库中的某一个表的名字呢?? 而你用opendialog获得的文件名,应该是一个数据库文件的路径啊。。
EEData1是一个 TTable控件
hzm_michael 2014-05-08
  • 打赏
  • 举报
回复

这是错误
hzm_michael 2014-05-08
  • 打赏
  • 举报
回复
求大神指点下 完全不明白错在哪啊 这是代码

if(OpenDialog1->Execute())
{
EEData1->Active=false;
EEData1->TableName=OpenDialog1->FileName;
int i,j,val;
  TLocateOptions Opts;
  char buf[1280];
  EEData1->Active=true;
  for(i=1;i<=17;i++){
          wsprintf(buf,"%02X",i-1);
          EEDataGrid->Cells[i][0]=buf;
          }

  Opts.Clear();
  for(i=0;i<(CALIBRATIONDATALEN)/16;i++){
          wsprintf(buf,"%02X_",i);
          EEDataGrid->Cells[0][i+1]=buf;
          EEData1->Locate("Address",i,Opts);
          for(j=0;j<16;j++){
                  wsprintf(buf,"%02X",j);
                  val=EEData1->FieldByName(buf)->AsInteger;
                  wsprintf(buf,"%02X",val);
                  EEDataGrid->Cells[j+1][i+1]=buf;
                  }
          }
  EEData1->Active=false;

}
draculamx 2014-05-08
  • 打赏
  • 举报
回复
EEData1->TableName=OpenDialog1->FileName; EEData1是一个什么控件??如果是db的数据库文件的话,不应该是 DataBase 这种类似的名字么?? 你这里后面是一个 TableName,是不是应该为数据库中的某一个表的名字呢?? 而你用opendialog获得的文件名,应该是一个数据库文件的路径啊。。
hzm_michael 2014-05-08
  • 打赏
  • 举报
回复
谁来帮帮忙呀

1,178

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder 数据库及相关技术
社区管理员
  • 数据库及相关技术社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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