设为首页收藏本站

AnyChat技术支持论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 活动 交友 discuz
查看: 3615|回复: 3

传送文件问题

[复制链接]

21

主题

74

帖子

275

积分

中级会员

Rank: 3Rank: 3

积分
275
发表于 2015-12-12 09:08:36 | 显示全部楼层 |阅读模式
本帖最后由 hk92 于 2015-12-12 09:33 编辑

  for (int i = 0; i <sendPath.Length; i++)
  { int flag = AnyChatCoreSDK.TransFile(m_TempUserID, sendPath, 1, 0, 0, ref taskId);
                        Print("成功发送" + sendPath + "文件");
                       // File.Delete(@
sendPath);
                        //Print("成功删除" +
sendPath+ "源文件");
                        }
在这个函数里面sendPath存储的文件的路径,按照上述的代码写法可以实现自动传送多个文件,但是把  File.Delete(@
sendPath); Print("成功删除" + sendPath + "源文件");这两句话加进来,就只能循环一次,为什么呢?我想把所有的文件发送完了,就把源文件给删除了。

回复

使用道具 举报

2

主题

77

帖子

482

积分

中级会员

Rank: 3Rank: 3

积分
482
发表于 2015-12-12 11:07:37 | 显示全部楼层
您好,  File.Delete(@ sendPath); Print("成功删除" + sendPath + "源文件")这个函数应该把源文件一次给删除完了。您把它放在for循环外面试试。
回复 支持 反对

使用道具 举报

21

主题

74

帖子

275

积分

中级会员

Rank: 3Rank: 3

积分
275
 楼主| 发表于 2015-12-12 15:13:53 | 显示全部楼层
本帖最后由 hk92 于 2015-12-12 16:36 编辑
佰锐科技-苏晴 发表于 2015-12-12 11:07
您好,  File.Delete(@ sendPath); Print("成功删除" + sendPath + "源文件")这个函数应该把源文件一次给删 ...

for (int i = 0; i <sendPath.Count; i++)
                        { int flag = AnyChatCoreSDK.TransFile(m_TempUserID, sendPath, 1, 0, 0, ref taskId);

                       
                            Print("成功发送" + sendPath + "文件");
                        }
                        for (int i = 0; i <sendPath.Count; i++)
                        {
                            File.Delete(@sendPath);
                        }
1、我在  File.Delete(@sendPath);这句话前面加了断点调试才能执行删除,如果没有加断点调试,是没有执行这 File.Delete(@sendPath)句的,为什么呢?
2.怎么知道int flag = AnyChatCoreSDK.TransFile(m_TempUserID, sendPath, 1, 0, 0, ref taskId);把文件发送完毕了(flag=0只能说明,执行发送,不代表发送完成了吧?)?
回复 支持 反对

使用道具 举报

发表于 2015-12-12 18:03:50 | 显示全部楼层

您好,你可以利用返回的的taskId,调用API来查询文件的发送状态:DWORD BRAC_QueryTransTaskInfo(DWORD dwUserid, DWORD dwTaskId, int infoname, char FAR* infoval, int infolen),参数:
dwUserid: 任务发起者用户编号(并非传输目标用户编号)
dwTaskId: 需要查询的任务编号
infoname 需要查询的信息代码(见备注附表)
infoval 查询信息值的保存参数地址
infolen 保存查询信息值参数类型所占内存大小
备注:
通过调用该方法,可以查询指定传输任务编号的缓冲区传输情况。用户编号与任务编号组合才具有唯一性,不同的用户可能存在相同的任务编号。
目前提供的查询的信息代码见下表:
查询文件传输状态码.png
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|AnyChat ( 粤ICP备13022410号-1 )  

GMT+8, 2024-3-30 13:58 , Processed in 0.132508 second(s), 25 queries .

Powered by Discuz! X3

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表