Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-winehq
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-winehq
Commits
3681a280
Commit
3681a280
authored
Apr 09, 2010
by
Alexandre Julliard
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
oleaut32: Query the path of the correct kind of typelib when unregistering it.
parent
5189eef6
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
28 additions
and
26 deletions
+28
-26
typelib.c
dlls/oleaut32/typelib.c
+28
-26
No files found.
dlls/oleaut32/typelib.c
View file @
3681a280
...
...
@@ -283,30 +283,9 @@ static WCHAR *get_lcid_subkey( LCID lcid, SYSKIND syskind, WCHAR *buffer )
static
HRESULT
TLB_ReadTypeLib
(
LPCWSTR
pszFileName
,
LPWSTR
pszPath
,
UINT
cchPath
,
ITypeLib2
**
ppTypeLib
);
/****************************************************************************
* QueryPathOfRegTypeLib [OLEAUT32.164]
*
* Gets the path to a registered type library.
*
* PARAMS
* guid [I] referenced guid
* wMaj [I] major version
* wMin [I] minor version
* lcid [I] locale id
* path [O] path of typelib
*
* RETURNS
* Success: S_OK.
* Failure: If the type library is not registered then TYPE_E_LIBNOTREGISTERED
* or TYPE_E_REGISTRYACCESS if the type library registration key couldn't be
* opened.
*/
HRESULT
WINAPI
QueryPathOfRegTypeLib
(
REFGUID
guid
,
WORD
wMaj
,
WORD
wMin
,
LCID
lcid
,
LPBSTR
path
)
/* Get the path to a registered type library. Helper for QueryPathOfRegTypeLib. */
static
HRESULT
query_typelib_path
(
REFGUID
guid
,
WORD
wMaj
,
WORD
wMin
,
SYSKIND
syskind
,
LCID
lcid
,
LPBSTR
path
)
{
HRESULT
hr
=
TYPE_E_LIBNOTREGISTERED
;
LCID
myLCID
=
lcid
;
...
...
@@ -336,7 +315,7 @@ HRESULT WINAPI QueryPathOfRegTypeLib(
{
LONG
dwPathLen
=
sizeof
(
Path
);
get_lcid_subkey
(
myLCID
,
SYS_WIN32
,
buffer
);
get_lcid_subkey
(
myLCID
,
syskind
,
buffer
);
if
(
RegQueryValueW
(
hkey
,
buffer
,
Path
,
&
dwPathLen
))
{
...
...
@@ -368,6 +347,29 @@ HRESULT WINAPI QueryPathOfRegTypeLib(
return
hr
;
}
/****************************************************************************
* QueryPathOfRegTypeLib [OLEAUT32.164]
*
* Gets the path to a registered type library.
*
* PARAMS
* guid [I] referenced guid
* wMaj [I] major version
* wMin [I] minor version
* lcid [I] locale id
* path [O] path of typelib
*
* RETURNS
* Success: S_OK.
* Failure: If the type library is not registered then TYPE_E_LIBNOTREGISTERED
* or TYPE_E_REGISTRYACCESS if the type library registration key couldn't be
* opened.
*/
HRESULT
WINAPI
QueryPathOfRegTypeLib
(
REFGUID
guid
,
WORD
wMaj
,
WORD
wMin
,
LCID
lcid
,
LPBSTR
path
)
{
return
query_typelib_path
(
guid
,
wMaj
,
wMin
,
SYS_WIN32
,
lcid
,
path
);
}
/******************************************************************************
* CreateTypeLib [OLEAUT32.160] creates a typelib
*
...
...
@@ -799,7 +801,7 @@ HRESULT WINAPI UnRegisterTypeLib(
}
/* get the path to the typelib on disk */
if
(
QueryPathOfRegTypeLib
(
libid
,
wVerMajor
,
wVerMinor
,
lcid
,
&
tlibPath
)
!=
S_OK
)
{
if
(
query_typelib_path
(
libid
,
wVerMajor
,
wVerMinor
,
syskind
,
lcid
,
&
tlibPath
)
!=
S_OK
)
{
result
=
E_INVALIDARG
;
goto
end
;
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment