Hi everybody, it looks like that currently some things are not completely implemented in librapi2, which should have been according to the list of implemented things.
I am not sure who currently works on librapi, or who has the most knowledge of this, but currently it just is a bit too difficult for me. As mentioned before, I got segfaults while querying all values within a given key. This is done with the function: CeRegEnumValue. Since there are two rapi directories, I first looked at what happened and under the hood, rapi2 is used. When looking at rapi2.c I found the following line that clearly explains my segfault: NULL, /* CeRegEnumValue */ in the definition of the rapi2_ops, while the EnumKey is defined: _CeRegEnumKeyEx2, /* CeRegEnumKeyEx */ After this I looked in the file rapi2/registry2.c and there I found the defintion of _CeRegEnumValue2, unfortunately this was commented out. After uncommenting this and rebuilding the library, I found a possible reason for the commenting: it does not work ;) The rapi context is filled with the request, as far as I know this is done correctly. After this the context_call is done and now the weird thing is that in the receiving buffer there are only 8 bytes present for the last_error and return_value variables. There should be more bytes (when debugging the _CeRegEnumKeyEx2 method, I can see that all result information is presented after these standard 8 bytes for the error/return values. My question is, who is able to understand why this was commented out, why it is not working. The weird thing is that the code written for the tool synce-registry really assumes that the EnumValue function is working. Hope anybody can help out with this. If more information is needed, I will try to provide this as good as I can :) Regards, Guido Diepen -- Aviation is proof that given the will, we have the capacity to achieve the impossible. --Eddie Rickenbacker ------------------------------------------------------------------------- SF.Net email is sponsored by: The Future of Linux Business White Paper from Novell. From the desktop to the data center, Linux is going mainstream. Let it simplify your IT future. http://altfarm.mediaplex.com/ad/ck/8857-50307-18918-4 _______________________________________________ SynCE-Devel mailing list SynCE-Devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/synce-devel