我在工程类型为:Active Form中调用TOpenDialog对话框,代码如下:
procedure TForm1.Button1Click(Sender: TObject);
var
  LoadFileName:string;
begin
  if diaOpen.Execute then
  begin
    LoadFileName:=diaOpen.FileName;
    .
    .
    .
  end;
end;LoadFileName得到的值有时是一个乱字符,有时是空串,什么原因呢?
请高手不吝赐教。
另:直接取diaOpen.FileName也一样,烦!!!!

解决方案 »

  1.   

    在D5+Win98;D6+win98;D6+win2000下都没遇到。
      

  2.   

    //LoadFileName得到的值有时是一个乱字符,有时是空串,什么原因呢?---文件名含中文。
      

  3.   

    To:yujohny(踏网无痕)我当然是选定了文件,然后才会到LoadFileName:=diaOpen.FileName这句的嘛
    我还没笨到那种程度
    to:xgc521(路人) 
    我的系统是Win2000 Server,D6真是奇怪,唉
      

  4.   

    To:MichealLee() 
    如果文件名是全字母的也一样,比如:lx.gif
      

  5.   


      将变量LoadFileName初始化一下试试!
      

  6.   

    可能是你不是用BIG5吧,设定字符的显示格式
      

  7.   

    to:swayi21(微斯人)我的工程是Active Form类型,生成的目标文件是OCX的,好像不能跟踪吧?另:如果我直接指定LoadFileName的值,程序运行正常,所以后面的代码应该没有问题to: longki(庆崽) 
    我在LoadFileName:=diaOpen.FileName;前面加了一句
    LoadFileName:='';效果还是一样
      

  8.   

    我刚刚试了一下,在D6下调用和在FrontPage下调用调试都正常,但在IE下就是不行真是怪了,IE也没问题