0

我正在使用 Ubuntu Server 9.10 AMD Phenom 2 cpu g++ (Ubuntu 4.4.1-4ubuntu9) 4.4.1

尝试运行应用程序 pftp-shit v 1.11,该应用程序成功运行,直到要保存远程文件列表(到 .pftp//pftpfxp--)。

tcp.cc 中的以下代码执行成功:

int outfile_fd = open(name, O_CREAT | O_TRUNC | O_RDWR | O_BINARY)

它返回一个文件描述符 int(在我的情况下为 6) - name 是一个 char 数组,其中包含我成功创建的文件的有效路径。并成功运行:

fchmod(outfile_fd, S_IRUSR | S_IWUSR);

access(name, W_OK)

运行函数时出现问题(来自 sys/uio.h)

write(outfile_fd, this->control_buffer, read_length)

返回-1。如果没有写入任何内容,则返回 -1,否则返回一个等于写入字节数的非负整数。

任何人都知道如何让写入功能工作?

4

2 回答 2

0

尝试写入的用户是否肯定可以写入目录和文件?也许尝试在 /tmp 中运行它作为测试。

于 2010-04-28T13:46:17.867 回答
0

出错时,返回 -1,并适当设置 errno。

也许errno可以给你一些关于什么是错的提示。

write(outfile_fd, this->control_buffer, read_length);

是否read_length包含要写入的正确字节数?

于 2010-04-28T10:44:58.560 回答