Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-cw
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-cw
Commits
bf73d900
Commit
bf73d900
authored
Mar 20, 2002
by
Guy L. Albertelli
Committed by
Alexandre Julliard
Mar 20, 2002
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
- Reimplement functions 350, 351, 352 to use appropriate W functions
(thanks Jürgen!) - Add additional comments to functions 266, 267, 276 and adjust the stubbed return values.
parent
6db25fae
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
40 additions
and
32 deletions
+40
-32
ordinal.c
dlls/shlwapi/ordinal.c
+40
-32
No files found.
dlls/shlwapi/ordinal.c
View file @
bf73d900
...
...
@@ -1572,29 +1572,41 @@ DWORD WINAPI SHLWAPI_241 ()
/*************************************************************************
* @ [SHLWAPI.266]
*
* native does at least approximately:
* strcpyW(newstr, x);
* strcatW(newstr, "\\Restrictions");
* if (RegOpenKeyExA(80000001, newstr, 00000000,00000001,40520b78))
* return 0;
* *unknown*
*/
DWORD
WINAPI
SHLWAPI_266
(
LPVOID
w
,
LPVOID
x
,
LPVOID
x
,
/* [in] partial registry key */
LPVOID
y
,
LPVOID
z
)
{
FIXME
(
"(%p %p %p %p)stub
\n
"
,
w
,
x
,
y
,
z
);
return
0xabba1248
;
return
/* 0xabba1248 */
0
;
}
/*************************************************************************
* @ [SHLWAPI.267]
*/
HRESULT
WINAPI
SHLWAPI_267
(
LPVOID
w
,
/* [???] NOTE: same as 1th parameter of SHLWAPI_219 */
LPVOID
x
,
/* [???] NOTE: same as 2nd parameter of SHLWAPI_219 */
LPVOID
y
,
LPVOID
z
)
LPVOID
w
,
LPVOID
x
,
LPVOID
y
,
/* [???] NOTE: same as 3rd parameter of SHLWAPI_219 */
LPVOID
z
)
/* [???] NOTE: same as 4th parameter of SHLWAPI_219 */
{
FIXME
(
"(%p %p %p %p)stub
\n
"
,
w
,
x
,
y
,
z
);
/* native seems to do:
* SHLWAPI_219 ((LPVOID)(((LPSTR)x)-4), ???, (REFIID) y, (LPVOID*) z);
*/
*
((
LPDWORD
)
z
)
=
0xabba1200
;
return
0xabba1254
;
return
/* 0xabba1254 */
0
;
}
/*************************************************************************
...
...
@@ -1611,11 +1623,19 @@ DWORD WINAPI SHLWAPI_268 (
/*************************************************************************
* @ [SHLWAPI.276]
*
* on first call process does following: other calls just returns 2
* instance = LoadLibraryA("SHELL32.DLL");
* func = GetProcAddress(instance, "DllGetVersion");
* ret = RegOpenKeyExA(80000002, "Software\\Microsoft\\Internet Explorer",00000000,0002001f, newkey);
* ret = RegQueryValueExA(newkey, "IntegratedBrowser",00000000,00000000,4052588c,40525890);
* RegCloseKey(newkey);
* FreeLibrary(instance);
* return 2;
*/
DWORD
WINAPI
SHLWAPI_276
()
{
FIXME
(
"()stub
\n
"
);
return
/* 0xabba1244 */
0
;
return
/* 0xabba1244 */
2
;
}
/*************************************************************************
...
...
@@ -1814,26 +1834,24 @@ DWORD WINAPI SHLWAPI_346 (
/*************************************************************************
* @ [SHLWAPI.350]
*
* seems to be
W interface to GetFileVersionInfoSizeA
* seems to be
late bound call to GetFileVersionInfoSizeW
*/
DWORD
WINAPI
SHLWAPI_350
(
LPWSTR
x
,
LPVOID
y
)
{
static
DWORD
WINAPI
(
*
pfnFunc
)(
LPCSTR
,
LPDWORD
)
=
NULL
;
CHAR
mbpath
[
MAX_PATH
];
static
DWORD
WINAPI
(
*
pfnFunc
)(
LPCWSTR
,
LPDWORD
)
=
NULL
;
DWORD
ret
;
GET_FUNC
(
version
,
"GetFileVersionInfoSizeA"
,
0
);
WideCharToMultiByte
(
0
,
0
,
x
,
-
1
,
mbpath
,
MAX_PATH
,
0
,
0
);
ret
=
pfnFunc
(
mbpath
,
y
);
GET_FUNC
(
version
,
"GetFileVersionInfoSizeW"
,
0
);
ret
=
pfnFunc
(
x
,
y
);
return
0x208
+
ret
;
}
/*************************************************************************
* @ [SHLWAPI.351]
*
* seems to be
W interface to GetFileVersionInfoA
* seems to be
late bound call to GetFileVersionInfoW
*/
BOOL
WINAPI
SHLWAPI_351
(
LPWSTR
w
,
/* [in] path to dll */
...
...
@@ -1841,18 +1859,16 @@ BOOL WINAPI SHLWAPI_351 (
DWORD
y
,
/* [in] return value from .350 - assume length */
LPVOID
z
)
/* [in/out] buffer (+0x208 sent to GetFileVersionInfoA) */
{
static
BOOL
WINAPI
(
*
pfnFunc
)(
LPCSTR
,
DWORD
,
DWORD
,
LPVOID
)
=
NULL
;
CHAR
mbpath
[
MAX_PATH
];
static
BOOL
WINAPI
(
*
pfnFunc
)(
LPCWSTR
,
DWORD
,
DWORD
,
LPVOID
)
=
NULL
;
GET_FUNC
(
version
,
"GetFileVersionInfoA"
,
0
);
WideCharToMultiByte
(
0
,
0
,
w
,
-
1
,
mbpath
,
MAX_PATH
,
0
,
0
);
return
pfnFunc
(
mbpath
,
x
,
y
-
0x208
,
z
+
0x208
);
GET_FUNC
(
version
,
"GetFileVersionInfoW"
,
0
);
return
pfnFunc
(
w
,
x
,
y
-
0x208
,
z
+
0x208
);
}
/*************************************************************************
* @ [SHLWAPI.352]
*
* seems to be
W interface to VerQueryValueA
* seems to be
late bound call to VerQueryValueW
*/
WORD
WINAPI
SHLWAPI_352
(
LPVOID
w
,
/* [in] buffer from _351 */
...
...
@@ -1861,18 +1877,10 @@ WORD WINAPI SHLWAPI_352 (
LPVOID
y
,
/* [out] ver buffer - passed to VerQueryValueA as #3 */
UINT
*
z
)
/* [in] ver length - passed to VerQueryValueA as #4 */
{
static
WORD
WINAPI
(
*
pfnFunc
)(
LPVOID
,
LPCSTR
,
LPVOID
*
,
UINT
*
)
=
NULL
;
CHAR
buf1
[
MAX_PATH
];
WORD
ret
;
static
WORD
WINAPI
(
*
pfnFunc
)(
LPVOID
,
LPCWSTR
,
LPVOID
*
,
UINT
*
)
=
NULL
;
GET_FUNC
(
version
,
"VerQueryValueA"
,
0
);
WideCharToMultiByte
(
0
,
0
,
x
,
lstrlenW
(
x
)
+
1
,
buf1
,
MAX_PATH
,
0
,
0
);
ret
=
pfnFunc
(
w
+
0x208
,
buf1
,
y
,
z
);
if
(
CompareStringA
(
GetThreadLocale
(),
NORM_IGNORECASE
,
buf1
,
1
,
"
\\
StringFileInfo"
,
15
)
==
2
/* CSTR_EQUAL */
)
{
ERR
(
"Need to translate back to wide - should fail now
\n
"
);
}
return
ret
;
GET_FUNC
(
version
,
"VerQueryValueW"
,
0
);
return
pfnFunc
(
w
+
0x208
,
x
,
y
,
z
);
}
/**************************************************************************
...
...
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