我的程序中只有一个是访问d;盘,其他是访问WMI的,在一般的机器都是可以的,就是在老大机器上是不行,真的不明白是怎么回事?谢谢

解决方案 »

  1.   

    写日志文件或使用msgbox框弹出信息,判断有没有执行那个获得路径的程序段。从而可以查出是否与他的环境有关
      

  2.   

    MsgBox "GetCPU"
        
        dt = Date
        Dim sdate
        sdate = Join(Split(dt, "-", -1, 1), "_")
        Dim fs
        fs = "D:\checkCPU_" & sdate & ".txt"    Set objFSO = CreateObject("Scripting.FileSystemObject")
        Set objLogFile = objFSO.OpenTextFile(fs, ForAppending, True)    MsgBox "GetTXT File"我的代码如上,就是在这里出错了,能是什么问题哪?
    帮帮忙!
      

  3.   

    你把那个文件放在你的程序的相同目录下。然后用相对路径访问。可以写成:
    dim strtemp as string
    strtemp="/checkCPU_"&sdate&".txt"
    fs=app.path+strtemp
    多加个字符变量来读写文件名,这样应该就可以了。
      

  4.   

    我是将这个vb程序编译成.exe后发给我们老大的!
    如果真的按照 supergold(流风飘雨)  的方法,能不能在出现同样的问题啊!已经好几次了,都不好意思麻烦了!
    谢谢
      

  5.   

    如果你老大的机器上有D盘,如果你在C下也试过,并且你也没给出具体是什么错误信息,那么只能分析一下了,应该有两种可能:一、与你老大机器中的区域设置有关,Date函数返回的格式与系统区域设置格式相同,比如在他机器上Date函数返回的是"2004/12/29"日,那么按着你的程序,在创建的文件名中会包含有"/"这个非法字符。当然就不成功了。二、由于你引用了FSO对象,所以可能是版本兼容问题,当然这种情况不太可能发生,但也不是没有这种可能。
      

  6.   

    跟那个盘没有关系。你老大的系统默认日期字符串格式与你的不同
    改:sdate = Format(Date, "yyyy_mm_dd") '如果你原设计的格式是长格式

    sdate = Format(Date, "yy_mm_dd")   '如果你原设计的格式是短格式
      

  7.   

    to songyaowu 真的就是时间的问题!
    谢谢大家的帮忙!