注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

Code@Pig Home

喜欢背着一袋Code傻笑的Pig .. 忧美.欢笑.记忆.忘却 .之. 角落

 
 
 

日志

 
 

[dbus] dbus hello  

2009-05-14 08:06:57|  分类: gui_X |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
d-bus 是啥?请听下回分解~
下面的程序在 OpenBSD 4.5 上 OK~
-------------------------------------------------------------------
CFLAGS=-I/usr/local/include/dbus-1.0 `pkg-config --cflags gtk+-2.0`
LIBS=-L/usr/local/lib -ldbus-1 -ldbus-glib-1 -lpthread `pkg-config --libs gtk+-2.0`

all:
        gcc ${CFLAGS} main.c ${LIBS}
-------------------------------------------------------------------
#include <gtk/gtk.h>
#include <dbus/dbus-glib-bindings.h>

int main(int argc, char *argv[])
{
    DBusGConnection *conn;
    GError *error;
    DBusGProxy *proxy;
    char **name_list;
    char **name_list_ptr;

    g_type_init();

    error = NULL;
    conn = dbus_g_bus_get(DBUS_BUS_SESSION, &error);
    if ( conn == NULL )
    {
        g_printerr("Failed to open connection to bus: %s\n",
                error->message);
        g_error_free(error);
        exit(1);
    }

    proxy = dbus_g_proxy_new_for_name(conn,
            DBUS_SERVICE_DBUS,
            DBUS_PATH_DBUS,
            DBUS_INTERFACE_DBUS);

    error = NULL;
    if ( !dbus_g_proxy_call(proxy, "ListNames", &error, G_TYPE_INVALID,
            G_TYPE_STRV, &name_list, G_TYPE_INVALID) )
    {
        if ( error->domain == DBUS_GERROR &&
             error->code == DBUS_GERROR_REMOTE_EXCEPTION )
        {
            g_printerr("Caught remote method exception %s: %s",
                dbus_g_error_get_name(error),
                error->message);
        }
        else
        {
            g_printerr("Error: %s\n", error->message);
        }

        g_error_free(error);
        exit(1);
    }


    g_print("Names on the message bus:\n");

    for ( name_list_ptr = name_list; *name_list_ptr; name_list_ptr++ )
    {
        g_print("  %s\n", *name_list_ptr);
    }
    g_strfreev(name_list);
    g_object_unref(proxy);

    return 0;
}

  评论这张
 
阅读(904)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017