在windows xp的administrator权限下写的exe,含有tmpstr=split(appPath,"\")这样的句子。
该exe放在system32目录下面运行。这个系统有3个用户帐户,其中一个是limited,另两个是admin。
admin权限下一切正常,而limited下面执行exe到那个句子的时候,说“runtime error 52, bad filename or number”。搞不动是怎么回事。

解决方案 »

  1.   

    runtime错误一般都是dll调用不正确出现的,最常见的就是你的程序里面的调用方法不对,看你的情形不象这个,你把你调用的dll放在跟exe同一目录下看下行不行,可能是哪个帐号没有使用system目录的权限吧
      

  2.   

    还有,你在admin权限下安装的 exe,会不会写了注册表什么的东西,而换了帐号后安装信息都不一样造成的
      

  3.   

    那么现在要确定两点就是:1.windows xp非管理员权限的那种windows账户,是否没有访问system32目录的权限?2.我敢肯定的是,程序是刚刚执行到tmpstr=split(appPath,"\")就报错,而apppath仅仅是一个字符串。如果是因为调用其他dll出错,会发生这种情形吗?
      

  4.   

    lv1(天下) ( ) 信誉:100  2006-02-25 12:23:00  得分: 0  还有,你在admin权限下安装的 exe,会不会写了注册表什么的东西,而换了帐号后安装信息都不一样造成的是的,这个exe随windows自动启动,写在注册表local_machine\SOFTWARE\Microsoft\Windows\CurrentVersion\Run 这个位置。在受限权限下自启动应该是没有问题,因为自启动了,运行到那一步,才出现runtime error
      
     
      

  5.   

    你可以加入msgbox看看到底哪报错msgbox appPath
    tmpstr=split(appPath,"\")
    msgbox tmpstr(0)
      

  6.   

    你可以加入msgbox看看到底哪报错msgbox appPath
    tmpstr=split(appPath,"\")
    msgbox tmpstr(0)早就试过了,就是tmpstr=split(appPath,"\")这一句