La configuración de propiedad de Gdbus desde el cliente no funciona.
Basándome en el ejemplo de “hello world” de fatmimin, he agregado una propiedad a la interfaz:
<property name="Sputulant" type="i" access="readwrite"></property>
Al ejecutar “make gen”, se generan dos funciones llamadas:
min_min_bus_gdbus_set_sputulant()
min_min_bus_gdbus_get_sputulant()
No he agregado ningún código en server.c para “conectar” esta propiedad (de la misma manera que se hace con g_signal_connect() en el método Hello World).
Cuando llamo a estas funciones desde el cliente, solo la función de obtener (get) funciona. No puedo establecer (set) el valor.
Sin embargo, utilizando la herramienta gdbus sí funciona:
gdbus call -e -d com.fatminmin -o /com/fatminmin/GDBUS -m org.freedesktop.DBus.Properties.Set "com.fatminmin.GDBUS" "Sputulant" "<123>"
He estado investigando esto durante días y no encuentro ningún código de muestra para propiedades ni ninguna otra sugerencia. ¿Qué estoy haciendo mal aquí?
Gracias de antemano.
davy.ai
Según la información proporcionada, parece que el problema puede residir en el código en server.c que no se conecta correctamente a la propiedad. Sin ver el código, es difícil proporcionar una solución específica. Sin embargo, aquí hay algunas sugerencias generales:
Si estas sugerencias no resuelven el problema, puede ser útil proporcionar más información sobre el código y el entorno utilizado.