小编Dim*_*kov的帖子

POSIX消息队列 - 打开时出错:参数无效

我在linux上创建消息队列时遇到了麻烦.我得到的错误是"无效的参数".我要做的另一件事是代码是Qt项目的一部分.

常见的错误是名称不以(/)开头且arg的数量不正确,但我检查了那些!

这是我正在尝试运行的代码:

#define MQ_TEST_PATH            "/test_queue"
#define MQ_MAX_MSG_SIZE         256
#define MQ_MAX_MSG_COUNT        20

struct mq_attr mqAttr;
mqAttr.mq_maxmsg = MQ_MAX_MSG_COUNT;
mqAttr.mq_msgsize = MQ_MAX_MSG_SIZE;

mq_unlink(MQ_TEST_PATH);

mode_t mode =  S_IRUSR | S_IWUSR;
int oflags = O_WRONLY | O_CREAT | O_EXCL;

mqd_t mqd;
mqd = mq_open(MQ_TEST_PATH, oflags, mode, &mqAttr);

if(mqd < 0){
    perror("Error on open");
    qDebug()<<mqd;
    return 0;
}

mq_close(mqd);
mq_unlink(MQ_TEST_PATH);
Run Code Online (Sandbox Code Playgroud)

输出:

Error on open: Invalid argument
-1 
Run Code Online (Sandbox Code Playgroud)

c linux qt message-queue

5
推荐指数
1
解决办法
8006
查看次数

无法打开包含西里尔字母符号的 Python 编码 URL

我有以下网址“mysite.com/\\u0422\\u0435\\u043A\\u0441\\u0442 \\u043D\\u0430 \\u043A\\u0438\\u0440\\u0438\\u043B\\u0438\ \u0446\\u0430" ("mysite.com/\xd0\xa2\xd0\xb5\xd0\xba\xd1\x81\xd1\x82 \xd0\xbd\xd0\xb0 \xd0\xba\xd0\xb8\xd1 \x80\xd0\xb8\xd0\xbb\xd0\xb8\xd1\x86\xd0\xb0")。我想使用 browser.open(link) 打开这个 URL,其中 browser 是

\n\n
$CHandler = urllib2.HTTPCookieProcessor(cookielib.CookieJar())\nbrowser = urllib2.build_opener(CHandler)\nuser_agent = \'  Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.17) Gecko/20110420 Firefox/3.6.17\'\nbrowser.addheaders = [(\'User-agent\', user_agent )]\nurllib2.install_opener(browser)\n
Run Code Online (Sandbox Code Playgroud)\n\n

但是我收到错误:

\n\n
\n

UnicodeEncodeError: \'ascii\' 编解码器无法对位置 12-17 中的字符进行编码:序数不在范围内 (128)"

\n
\n\n

我从 JSON 中获取此 URL。

\n\n

我该如何解决这个问题?

\n

python url encoding

3
推荐指数
1
解决办法
3148
查看次数

标签 统计

c ×1

encoding ×1

linux ×1

message-queue ×1

python ×1

qt ×1

url ×1