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
cdff5431
Commit
cdff5431
authored
Sep 28, 1999
by
Ian Schmidt
Committed by
Alexandre Julliard
Sep 28, 1999
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Implementation of 2 Win98 by-ordinal SHELL32 routines. Helps Win98
Explorer work better.
parent
09c71b1c
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
75 additions
and
2 deletions
+75
-2
shell32.spec
dlls/shell32/shell32.spec
+8
-2
shellord.c
dlls/shell32/shellord.c
+67
-0
No files found.
dlls/shell32/shell32.spec
View file @
cdff5431
...
...
@@ -248,8 +248,8 @@ init Shell32LibMain
240 stub SHEmptyRecycleBinA@12 # exported by name
241 stub SHEmptyRecycleBinW@12 # exported by name
242 stdcall SHFileOperation (ptr) SHFileOperationAW # exported by name
243 stdcall
SHFileOperationA (ptr) SHFileOperationA # exported by name
244 stdcall SH
FileOperationW (ptr) SHFileOperationW # exported by name
243 stdcall
shell32_243(long long) shell32_243
244 stdcall SH
InitRestricted(ptr ptr) SHInitRestricted # win98+ only, by ordinal
245 stub SHFormatDrive@16 # exported by name
246 stub SHFreeNameMappings@4 # exported by name
247 stdcall SHGetDataFromIDListA (ptr ptr long ptr long) SHGetDataFromIDListA
...
...
@@ -387,3 +387,8 @@ init Shell32LibMain
1221 stdcall SHGetSpecialFolderPathA(long ptr long long) SHGetSpecialFolderPathA # win98:292
1222 stdcall DoEnvironmentSubstA (str str) DoEnvironmentSubstA # win98:293
1223 stdcall DoEnvironmentSubstW (wstr wstr) DoEnvironmentSubstW # win98:204
# by-name routines relocated in win98
1224 stdcall SHFileOperationA (ptr) SHFileOperationA # exported by name
1225 stdcall SHFileOperationW (ptr) SHFileOperationW # exported by name
\ No newline at end of file
dlls/shell32/shellord.c
View file @
cdff5431
...
...
@@ -20,6 +20,10 @@
DEFAULT_DEBUG_CHANNEL
(
shell
)
/* shell policy data */
#define SHELL_MAX_POLICIES 57
/* number in Win98 */
unsigned
long
shell_policies
[
SHELL_MAX_POLICIES
];
/*************************************************************************
* SHChangeNotifyRegister [SHELL32.2]
*
...
...
@@ -362,6 +366,57 @@ DWORD WINAPI SHRestricted (DWORD pol) {
}
/*************************************************************************
* SHInitRestricted [SHELL32.244]
*
* Win98+ by-ordinal only routine called by Explorer and MSIE 4 and 5.
*
* INPUTS
* Two inputs: one is a string or NULL. If non-NULL the pointer
* should point to a string containing the following exact text:
* "Software\Microsoft\Windows\CurrentVersion\Policies".
* The other input is unused.
*
* NOTES
* If the input is non-NULL and does not point to a string containing
* that exact text the routine will do nothing.
*
* If the text does match or the pointer is NULL, then the routine
* will init SHRestricted()'s policy table to all 0xffffffff and
* returns 0xffffffff as well.
*
* I haven't yet run into anything calling this with inputs other than
* (NULL, NULL), so I may have the inputs reversed.
*/
BOOL
WINAPI
SHInitRestricted
(
LPSTR
inpRegKey
,
LPSTR
parm2
)
{
int
i
;
TRACE
(
"(%p, %p)
\n
"
,
inpRegKey
,
parm2
);
/* first check - if input is non-NULL and points to the secret
key string, then pass. Otherwise return 0.
*/
if
(
inpRegKey
!=
(
LPSTR
)
NULL
)
{
if
(
lstrcmpiA
(
inpRegKey
,
"Software
\\
Microsoft
\\
Windows
\\
CurrentVersion
\\
Policies"
))
{
/* doesn't match, fail */
return
0
;
}
}
/* check passed, init all policy table entries with 0xffffffff */
for
(
i
=
0
;
i
<
SHELL_MAX_POLICIES
;
i
++
)
{
shell_policies
[
i
]
=
0xffffffff
;
}
return
0xffffffff
;
}
/*************************************************************************
* SHCreateDirectory [SHELL32.165]
*
* NOTES
...
...
@@ -1319,3 +1374,15 @@ HRESULT WINAPI DoEnvironmentSubstAW(LPVOID x, LPVOID y)
return
DoEnvironmentSubstA
(
x
,
y
);
}
/*************************************************************************
* shell32_243 [SHELL32.243]
*
* Win98+ by-ordinal routine. In Win98 this routine returns zero and
* does nothing else. Possibly this does something in NT or SHELL32 5.0?
*
*/
BOOL
WINAPI
shell32_243
(
DWORD
a
,
DWORD
b
)
{
return
FALSE
;
}
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