有人可以编译并执行我在下面提供的小样本代码吗?如果shift键修饰符适合您,请告诉我.此示例假设演示gtk中的按键功能.它适用于简单的按键操作,甚至可以使用控制键修改器,但它不适用于Shift键修改器.
/*
*
* compile command:
*
* gcc keypress3.c -o keypress3 `pkg-config --libs --cflags gtk+-2.0`
*
*/
#include <gtk/gtk.h>
#include <gdk/gdkkeysyms.h>
gboolean
on_key_press (GtkWidget *widget, GdkEventKey *event, gpointer user_data);
int main (int argc, char *argv[])
{
GtkWidget *window;
gtk_init (&argc, &argv);
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
g_signal_connect (G_OBJECT (window), "destroy", G_CALLBACK (gtk_main_quit), NULL);
g_signal_connect (G_OBJECT (window), "key_press_event", G_CALLBACK (on_key_press), NULL);
gtk_widget_show_all (window);
gtk_main ();
return 0;
}
gboolean
on_key_press (GtkWidget *widget, GdkEventKey *event, gpointer user_data)
{
switch (event->keyval)
{
case …Run Code Online (Sandbox Code Playgroud) 它曾经是我Segmentation Fault没有核心,然后我将-ggdb添加到编译命令并在执行gcc之前在bash中执行此命令:
ulimit -c unlimited
Run Code Online (Sandbox Code Playgroud)
一段时间都很好(我有一个核心),但现在我得到Segmentation Fault (core dumped)了gcc命令发出的目录中没有核心?可能会去别的地方吗?我还能尝试什么?
一点额外的信息:
答: 我发现了两种方式:
find / -name "core" -ls 至于torek建议:
$ strace ./executable> output.txt 2>&1
$ grep chdir output.txt
我想在我的gtk +文本编辑器中隐藏菜单栏.认为这只是一个简单的问题gtk_widget_hide(menubar),但当我这样做时,我松开了所有键盘快捷键.你如何隐藏菜单栏并保持加速器功能?
我无意中将此收件箱中的所有邮件标记为使用此python语句读取:
status, data = conn.uid('fetch', fetch_uids, '(RFC822)')
Run Code Online (Sandbox Code Playgroud)
但我能够通过以下一组陈述来浏览消息的所有部分:
email_message = email.message_from_string(data[0][1])
for part in email_message.walk():
print '\n'
print 'Content-Type:',part.get_content_type()
print 'Main Content:',part.get_content_maintype()
print 'Sub Content:',part.get_content_subtype()
Run Code Online (Sandbox Code Playgroud)
输出:
Content-Type: multipart/mixed
Main Content: multipart
Sub Content: mixed
Content-Type: multipart/alternative
Main Content: multipart
Sub Content: alternative
Content-Type: text/plain
Main Content: text
Sub Content: plain
Content-Type: text/html
Main Content: text
Sub Content: html
Run Code Online (Sandbox Code Playgroud)
我发现如果我使用这个陈述:
status, data = conn.uid('fetch', fetch_uids, '(RFC822.HEADER BODY.PEEK[1])')
Run Code Online (Sandbox Code Playgroud)
我不会将所有消息都标记为已读.但是,我也不会得到消息的所有部分:
Content-Type: multipart/mixed
Main Content: multipart
Sub Content: mixed
Run Code Online (Sandbox Code Playgroud)
我试着在这里阅读imaplib的手册,但没有提到"peek"这个词.我的问题是,如何在不将我的消息标记为已读的情况下获取消息的所有部分?谢谢.
所以我可以使用smtplib登录并通过gmail发送邮件(使用下面的脚本),但我只是想知道是否使用oauth2是一个像imaplib一样的选项?我没有在smtplib文档页面上看到有关oauth的任何内容,我没有发现任何谷歌搜索.谢谢.
#! /usr/bin/python
import smtplib
to = 'myemailaddress'
gmail_user = 'myemailaddress'
gmail_pwd = 'passwd'
smtpserver = smtplib.SMTP("smtp.gmail.com",587)
smtpserver.ehlo()
smtpserver.starttls()
smtpserver.ehlo
smtpserver.login(gmail_user, gmail_pwd)
header = 'To:' + to + '\n' + 'From: ' + gmail_user + '\n' + 'Subject:testing \n'
print header
msg = header + '\n this is test msg from me \n\n'
smtpserver.sendmail(gmail_user, to, msg)
print 'done!'
smtpserver.close();
Run Code Online (Sandbox Code Playgroud)
编辑:
感谢samy.vilar在他的回答中提供了非常详细的解释.但是,我有点麻烦.这是我的脚本:
#! /usr/bin/python
import oauth2 as oauth
import oauth2.clients.smtp as smtplib
consumer = oauth.Consumer('anonymous', 'anonymous')
token = oauth.Token('1/MI6B2DqJP4FEkDRLUKrD5l46sQ0758-2ucEKBY-DeB0', 'NysqNqVTulFsdHpSRrPP56sF')
url …Run Code Online (Sandbox Code Playgroud) 来自python,我对C++有些新意.我真正想念的一个功能是字符串格式操作符.我已经看到很多可以在printf()函数中使用的例子,但是,有时候只是在字符串变量中替换占位符是很方便的.以下是使用mysqldb模块的python示例:
...
stmt = 'INSERT INTO %s(pid, starttime) VALUES("%s","%s")' % ('pids', int(p0.pid), episode[0][1])
cursor.execute(stmt)
Run Code Online (Sandbox Code Playgroud)
你能用C++做类似的事吗?我没有找到任何谷歌搜索的例子.