[ros-kernel] RtlQueryRegistryValues() in WIN32K

Thomas Weidenmueller w3seek at reactos.com
Thu Sep 16 00:51:11 CEST 2004


Martin Fuchs wrote:

>On 15.09.2004 18:02:10 Thomas Weidenmueller wrote:
>
>  
>
>>You can't call usermode dlls from win32k, see IntGetFontMetricSetting() 
>>in ntuser\misc.dll for an example how to lookup stuff in the registry.
>>    
>>
>
>Thanks!
>I am now using RtlQueryRegistryValues(), but there is still a problem:
>It only returns the status code 0xC0000005. This is because
>RtlFormatCurrentUserKeyPath() has a problem in NtOpenThreadToken().
>I checked the code in anyway, so some one other may have a look into
>this.
>Is there be a problem with reading information from the HKEY_CURENT_USER
>hive from WIN32K ? I am calling RtlQueryRegistryValues() with the
>RTL_REGISTRY_USER flag.
>
>Regards,
>
>   Martin
>_______________________________________________
>Ros-kernel mailing list
>Ros-kernel at reactos.com
>http://reactos.com/mailman/listinfo/ros-kernel
>
>
>  
>
One reason could be (i don't know) that the desktop thread (who usually 
draws the background on the desktop, unless PaintDesktop() is used in 
another application) runs in the context of CSRSS. I don't know if you 
can access HKCU from CSRSS. However after the user logged in you should 
propably somehow notify csrss to check this key, you however should not 
query the registry on every repaint, it'd be better if the text was 
stored in some global variable (or even better per window station if 
reactos might get the ability of multiple user logins without creating 
new sessions).

Regards
Thomas


More information about the Ros-kernel mailing list