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
bd9c265c
Commit
bd9c265c
authored
Jan 26, 2009
by
Hans Leidekker
Committed by
Alexandre Julliard
Jan 26, 2009
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
setupapi: Implement SetupInstallFileExA/W.
parent
2ec1e4a3
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
33 additions
and
13 deletions
+33
-13
queue.c
dlls/setupapi/queue.c
+31
-11
setupapi.spec
dlls/setupapi/setupapi.spec
+2
-2
No files found.
dlls/setupapi/queue.c
View file @
bd9c265c
...
...
@@ -1063,17 +1063,17 @@ static BOOL do_file_copyW( LPCWSTR source, LPCWSTR target, DWORD style,
}
/***********************************************************************
* SetupInstallFileA (SETUPAPI.@)
* SetupInstallFile
Ex
A (SETUPAPI.@)
*/
BOOL
WINAPI
SetupInstallFileA
(
HINF
hinf
,
PINFCONTEXT
inf_context
,
PCSTR
source
,
PCSTR
root
,
PCSTR
dest
,
DWORD
style
,
PSP_FILE_CALLBACK_A
handler
,
PVOID
context
)
BOOL
WINAPI
SetupInstallFile
Ex
A
(
HINF
hinf
,
PINFCONTEXT
inf_context
,
PCSTR
source
,
PCSTR
root
,
PCSTR
dest
,
DWORD
style
,
PSP_FILE_CALLBACK_A
handler
,
PVOID
context
,
PBOOL
in_use
)
{
BOOL
ret
=
FALSE
;
struct
callback_WtoA_context
ctx
;
UNICODE_STRING
sourceW
,
rootW
,
destW
;
TRACE
(
"%p %p %s %s %s %x %p %p
\n
"
,
hinf
,
inf_context
,
debugstr_a
(
source
),
debugstr_a
(
root
),
debugstr_a
(
dest
),
style
,
handler
,
context
);
TRACE
(
"%p %p %s %s %s %x %p %p
%p
\n
"
,
hinf
,
inf_context
,
debugstr_a
(
source
),
debugstr_a
(
root
),
debugstr_a
(
dest
),
style
,
handler
,
context
,
in_use
);
sourceW
.
Buffer
=
rootW
.
Buffer
=
destW
.
Buffer
=
NULL
;
if
(
source
&&
!
RtlCreateUnicodeStringFromAsciiz
(
&
sourceW
,
source
))
...
...
@@ -1095,7 +1095,7 @@ BOOL WINAPI SetupInstallFileA( HINF hinf, PINFCONTEXT inf_context, PCSTR source,
ctx
.
orig_context
=
context
;
ctx
.
orig_handler
=
handler
;
ret
=
SetupInstallFile
W
(
hinf
,
inf_context
,
sourceW
.
Buffer
,
rootW
.
Buffer
,
destW
.
Buffer
,
style
,
QUEUE_callback_WtoA
,
&
ctx
);
ret
=
SetupInstallFile
ExW
(
hinf
,
inf_context
,
sourceW
.
Buffer
,
rootW
.
Buffer
,
destW
.
Buffer
,
style
,
QUEUE_callback_WtoA
,
&
ctx
,
in_use
);
exit:
RtlFreeUnicodeString
(
&
sourceW
);
...
...
@@ -1105,10 +1105,19 @@ exit:
}
/***********************************************************************
* SetupInstallFile
W
(SETUPAPI.@)
* SetupInstallFile
A
(SETUPAPI.@)
*/
BOOL
WINAPI
SetupInstallFileW
(
HINF
hinf
,
PINFCONTEXT
inf_context
,
PCWSTR
source
,
PCWSTR
root
,
PCWSTR
dest
,
DWORD
style
,
PSP_FILE_CALLBACK_W
handler
,
PVOID
context
)
BOOL
WINAPI
SetupInstallFileA
(
HINF
hinf
,
PINFCONTEXT
inf_context
,
PCSTR
source
,
PCSTR
root
,
PCSTR
dest
,
DWORD
style
,
PSP_FILE_CALLBACK_A
handler
,
PVOID
context
)
{
return
SetupInstallFileExA
(
hinf
,
inf_context
,
source
,
root
,
dest
,
style
,
handler
,
context
,
NULL
);
}
/***********************************************************************
* SetupInstallFileExW (SETUPAPI.@)
*/
BOOL
WINAPI
SetupInstallFileExW
(
HINF
hinf
,
PINFCONTEXT
inf_context
,
PCWSTR
source
,
PCWSTR
root
,
PCWSTR
dest
,
DWORD
style
,
PSP_FILE_CALLBACK_W
handler
,
PVOID
context
,
PBOOL
in_use
)
{
static
const
WCHAR
CopyFiles
[]
=
{
'C'
,
'o'
,
'p'
,
'y'
,
'F'
,
'i'
,
'l'
,
'e'
,
's'
,
0
};
...
...
@@ -1116,8 +1125,10 @@ BOOL WINAPI SetupInstallFileW( HINF hinf, PINFCONTEXT inf_context, PCWSTR source
WCHAR
*
buffer
,
*
p
,
*
inf_source
=
NULL
;
unsigned
int
len
;
TRACE
(
"%p %p %s %s %s %x %p %p
\n
"
,
hinf
,
inf_context
,
debugstr_w
(
source
),
debugstr_w
(
root
),
debugstr_w
(
dest
),
style
,
handler
,
context
);
TRACE
(
"%p %p %s %s %s %x %p %p %p
\n
"
,
hinf
,
inf_context
,
debugstr_w
(
source
),
debugstr_w
(
root
),
debugstr_w
(
dest
),
style
,
handler
,
context
,
in_use
);
if
(
in_use
)
FIXME
(
"no file in use support
\n
"
);
if
(
hinf
)
{
...
...
@@ -1170,6 +1181,15 @@ BOOL WINAPI SetupInstallFileW( HINF hinf, PINFCONTEXT inf_context, PCWSTR source
}
/***********************************************************************
* SetupInstallFileW (SETUPAPI.@)
*/
BOOL
WINAPI
SetupInstallFileW
(
HINF
hinf
,
PINFCONTEXT
inf_context
,
PCWSTR
source
,
PCWSTR
root
,
PCWSTR
dest
,
DWORD
style
,
PSP_FILE_CALLBACK_W
handler
,
PVOID
context
)
{
return
SetupInstallFileExW
(
hinf
,
inf_context
,
source
,
root
,
dest
,
style
,
handler
,
context
,
NULL
);
}
/***********************************************************************
* SetupCommitFileQueueW (SETUPAPI.@)
*/
BOOL
WINAPI
SetupCommitFileQueueW
(
HWND
owner
,
HSPFILEQ
handle
,
PSP_FILE_CALLBACK_W
handler
,
...
...
dlls/setupapi/setupapi.spec
View file @
bd9c265c
...
...
@@ -437,8 +437,8 @@
@ stdcall SetupInitializeFileLogA (str long)
@ stdcall SetupInitializeFileLogW (wstr long)
@ stdcall SetupInstallFileA(ptr ptr str str str long ptr ptr)
@ st
ub SetupInstallFileExA
@ st
ub SetupInstallFileExW
@ st
dcall SetupInstallFileExA(ptr ptr str str str long ptr ptr ptr)
@ st
dcall SetupInstallFileExW(ptr ptr wstr wstr wstr long ptr ptr ptr)
@ stdcall SetupInstallFileW(ptr ptr wstr wstr wstr long ptr ptr)
@ stdcall SetupInstallFilesFromInfSectionA(long long long str str long)
@ stdcall SetupInstallFilesFromInfSectionW(long long long wstr wstr long)
...
...
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