Will function advapi32.dll.RegOpenUserClassesRoot will be implemented?

MediaHost (TM) webmaster at startcom.org
Wed Jan 14 06:51:13 CST 2004


Well, I guess, that there are people actively developing...It might be
easier for them to get a fix done...

Until I get into the source and understand, what you guys did.....win2000
will have finished end of life :-)

Anyone knows where to insert this piece of code?

Can be found here:

    http://msdn.microsoft.com/msdnmag/issues/1100/Registry/default.aspx

the following:

Registry API Flavors and New Functions
There are basically three ways to program the registry: the Win32 API
functions (advapi32.dll), the more recent Shell Lightweight API
(shlwapi.dll), and various object models accessible mostly from Visual
Basic® and Windows Script Host. If Visual Basic is your favorite development
tool, I recommend taking a look at the RegObj library available from
http://msdn.microsoft.com/vbasic/downloads. It is an object model that
emulates the full Win32 API for working with the registry.
The original set of registry functions provides you with the greatest
flexibility. It requires you to open a key, to read or write to it, and then
close it; the three basic operations for reading or writing an individual
entry.
The Shell Lightweight library-also available with Windows 98, Windows 95,
and Windows NT 4.0 plus Internet Explorer 5.0 or higher-comes with some new
functions that internally open and close the specified key when asked to
read or write values. You just call SHGetValue or SHSetValue and let the
function deal with the registry. In addition, the new API provides a
SHDeleteKey function that recursively deletes non-empty keys. As explained
earlier, this is the standard behavior in Windows 9x, but not in Windows NT
or Windows 2000.
The Windows 2000 SDK introduces three new functions that work with the
registry: RegOpenUserClassesRoot, RegOpenCurrentUser, and
RegDisablePredefinedCache. RegOpenUserClassesRoot returns a handle to HKCR
for the specified user. You identify the user through an access token. The
token can be returned by functions like LogonUser, and allows you to log
onto the system as if you were another user.
RegOpenCurrentUser retrieves a handle to HKCU. Notice that by default all
the values stored in HKCU are cached for all threads in a process. To
disable this practice and force the API to read and write from disk,
remember to call RegDisablePredefinedCache.
IQueryAssociations is another tool for working with the registry. It
simplifies the information retrieval from HKCR and HKCU. You obtain a
reference to the interface through IShellFolder's GetUIObjectOf or a new API
function called AssocCreate. The IQueryAssociations methods allow you to set
the root key and query for data, as shown in the following code:

----- Original Message ----- 
From: "Marcus Meissner" <meissner at suse.de>
To: "MediaHost (TM)" <webmaster at startcom.org>
Cc: <wine-devel at winehq.org>
Sent: Wednesday, January 14, 2004 12:08 PM
Subject: Re: Will function advapi32.dll.RegOpenUserClassesRoot will be
implemented?




---
StartCom Ltd.
http://www.startcom.org

Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.560 / Virus Database: 352 - Release Date: 1/8/2004
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: image/gif
Size: 48 bytes
Desc: not available
Url : http://www.winehq.org/pipermail/wine-devel/attachments/20040114/d463962d/attachment.gif


More information about the wine-devel mailing list