热情软件屋

 

PB如何复制文件


编号:QA000306
建立日期: 1999年1月6日 最后修改日期:1999年1月6日
所属类别:

Ice:
    工具:Power Builder 4.0
    操作系统: Win95
    调用win95的CopyFile()函数时报错, 因为我用的pb是16位版本, 怀疑是参数传递得不对, 定义为:
    FUNCTION boolean
    CopyFile(ref string cfrom,
     ref string cto,
     boolean flag)
    LIBRARY "Kernel.dll"
    
    调用为:
    boolean bTest,bTest1
    bTest1 = false
    sName1 = "c:\x.txt"
    sName2 = "d:\x.txt"
    bTest = CopyFile(sName1, sName2, bTest1)
    出错信息与不存在此函数时报错一样,请指教。

回答:

    PB的16位版本只能调用Windows 3.x的API,而32位版本只能调用Win32 API。CopyFile是Win32API的一个函数,在Windows 3.x的API没有,这就是你调用时出错的原因。从理论上,借助thunk技术,可以实现PB的16位版本调用Win32 API,但比较麻烦,在此就不讨论了。
    PB没有拷贝文件的函数, 但是有低级文件操作函数:fwrite(), fopen(), fread()等实现文件复制。

此问题由李海、gxg回答。

 
把这个问题推荐给朋友
   
   
您的意见类别
您的名字
您的电子邮件
您的建议(请尽可能详细)
 
 

版权所有 1997-2008 热情软件屋
如果您有任何建议和意见, 请给我发个电子邮件 askpro@china-askpro.com
Web Designed by ZebraStudio