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
5644cdc1
Commit
5644cdc1
authored
Sep 26, 2000
by
Andreas Mohr
Committed by
Alexandre Julliard
Sep 26, 2000
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Started some basic work on the more or less undocumented SETUPX
functions.
parent
0fc9d151
Show whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
200 additions
and
11 deletions
+200
-11
Makefile.in
dlls/setupapi/Makefile.in
+1
-0
infparse.c
dlls/setupapi/infparse.c
+93
-0
setupx.spec
dlls/setupapi/setupx.spec
+10
-10
setupx16.h
dlls/setupapi/setupx16.h
+42
-0
setupx_main.c
dlls/setupapi/setupx_main.c
+54
-1
No files found.
dlls/setupapi/Makefile.in
View file @
5644cdc1
...
...
@@ -8,6 +8,7 @@ ALTNAMES = setupx
IMPORTS
=
advapi32 kernel32
C_SRCS
=
\
infparse.c
\
setupx_main.c
\
stubs.c
...
...
dlls/setupapi/infparse.c
0 → 100644
View file @
5644cdc1
/*
* SetupX .inf file parsing functions
*
* FIXME: return values ???
*/
#include "debugtools.h"
#include "windef.h"
#include "winbase.h"
#include "wine/winbase16.h"
#include "setupx16.h"
DEFAULT_DEBUG_CHANNEL
(
setupx
);
WORD
InfNumEntries
=
0
;
INF_HANDLE
*
InfList
=
NULL
;
#define GET_INF_ENTRY(x) ((InfList - x)/4)
RETERR16
IP_OpenInf
(
LPCSTR
lpInfFileName
,
HINF16
*
lphInf
)
{
HFILE16
hFile
=
_lopen16
(
lpInfFileName
,
OF_READ
);
if
(
!
lphInf
)
return
IP_ERROR
;
if
(
hFile
!=
HFILE_ERROR16
)
{
InfList
=
HeapReAlloc
(
GetProcessHeap
(),
0
,
InfList
,
InfNumEntries
+
1
);
InfList
[
InfNumEntries
].
hInfFile
=
hFile
;
InfList
[
InfNumEntries
].
lpInfFileName
=
lpInfFileName
;
InfNumEntries
++
;
*
lphInf
=
&
InfList
[
InfNumEntries
-
1
]
-
InfList
;
return
OK
;
}
*
lphInf
=
0xffff
;
return
ERR_IP_INVALID_INFFILE
;
}
LPCSTR
IP_GetFileName
(
HINF16
hInf
)
{
if
((
hInf
<=
(
InfNumEntries
*
sizeof
(
INF_HANDLE
*
)))
&&
((
hInf
&
3
)
==
0
))
/* aligned ? */
{
return
InfList
[
hInf
/
4
].
lpInfFileName
;
}
return
NULL
;
}
RETERR16
IP_CloseInf
(
HINF16
hInf
)
{
int
i
;
HFILE16
res
=
ERR_IP_INVALID_HINF
;
if
((
hInf
<=
(
InfNumEntries
*
sizeof
(
INF_HANDLE
*
)))
&&
((
hInf
&
3
)
==
0
))
/* aligned ? */
{
_lclose16
(
InfList
[
hInf
/
4
].
hInfFile
);
res
=
OK
;
for
(
i
=
hInf
/
4
;
i
<
InfNumEntries
-
1
;
i
++
)
InfList
[
i
]
=
InfList
[
i
+
1
];
InfNumEntries
--
;
InfList
=
HeapReAlloc
(
GetProcessHeap
(),
0
,
InfList
,
InfNumEntries
);
}
return
res
;
}
/***********************************************************************
* IpOpen16
*
*/
RETERR16
WINAPI
IpOpen16
(
LPCSTR
lpInfFileName
,
HINF16
*
lphInf
)
{
TRACE
(
"('%s', %p)
\n
"
,
lpInfFileName
,
lphInf
);
return
IP_OpenInf
(
lpInfFileName
,
lphInf
);
}
/***********************************************************************
* IpClose16
*/
RETERR16
WINAPI
IpClose16
(
HINF16
hInf
)
{
return
IP_CloseInf
(
hInf
);
}
/***********************************************************************
* IpGetProfileString16
*/
RETERR16
WINAPI
IpGetProfileString16
(
HINF16
hInf
,
LPCSTR
section
,
LPCSTR
entry
,
LPSTR
buffer
,
WORD
buflen
)
{
GetPrivateProfileString16
(
section
,
entry
,
""
,
buffer
,
buflen
,
IP_GetFileName
(
hInf
));
return
0
;
}
dlls/setupapi/setupx.spec
View file @
5644cdc1
...
...
@@ -3,9 +3,9 @@ type win16
owner setupapi
1 stub WEP
2
stub IPOPEN
2
pascal16 IpOpen(str ptr) IpOpen16
3 stub IPOPENAPPEND
4
stub IPCLOSE
4
pascal16 IpClose(word) IpClose16
5 stub IPGETLONGFIELD
6 stub IPGETSTRINGFIELD
7 stub IPFINDFIRSTLINE
...
...
@@ -39,7 +39,7 @@ owner setupapi
35 stub CTLFINDLDD
36 stub CTLADDLDD
37 stub CTLDELLDD
38
stub CTLGETLDDPATH
38
pascal16 CtlGetLddPath(word ptr) CtlGetLddPath16
39 stub SUREGCLOSEKEY
40 stub SUREGCREATEKEY
41 stub SUREGDELETEKEY
...
...
@@ -48,7 +48,7 @@ owner setupapi
44 stub SUREGENUMVALUE
45 stub SUREGFLUSH
46 stub SUREGINIT
47 pascal SU
r
egOpenKey(word str ptr) SURegOpenKey
47 pascal SU
R
egOpenKey(word str ptr) SURegOpenKey
48 stub SUREGQUERYVALUE
49 stub SUREGQUERYVALUE16
50 pascal SURegQueryValueEx(long str ptr ptr ptr ptr) SURegQueryValueEx
...
...
@@ -64,9 +64,9 @@ owner setupapi
63 stub SURPLSETUP
64 stub SUSTORELDIDPATH
65 stub WILDCARDSTRCMPI
101
stub GENINSTALL
101
pascal16 GenInstall(word str word) GenInstall16
102 stub GENWININITRENAME
103
stub GENFORMSTRWITHOUTPLACEHOLDERS
103
pascal GenFormStrWithoutPlaceHolders(str str word) GenFormStrWithoutPlaceHolders16
104 stub SETUPX
105 stub CFGSETUPMERGE
106 stub INITDEPENDANTLDIDS
...
...
@@ -113,8 +113,8 @@ owner setupapi
160 stub SXUPDATEDS
170 stub SUSETMEM
171 stub WRITEDMFBOOTDATA
200
stub VCPOPEN
201
stub VCPCLOSE
200
pascal vcpOpen(ptr str) vcpOpen16
201
pascal vcpClose(word word word) vcpClose16
202 stub VCPDEFCALLBACKPROC
203 stub VCPENUMFILES
204 stub VCPQUEUERENAME
...
...
@@ -123,7 +123,7 @@ owner setupapi
207 stub VSMSTRINGADD
208 stub VSMGETSTRINGRAWNAME
209 stub IPSAVERESTOREPOSITION
210
stub IPGETPROFILESTRING
210
pascal16 IpGetProfileString(word str str ptr word) IpGetProfileString16
211 stub IPOPENEX
212 stub IPOPENAPPENDEX
213 stub VCPUICALLBACKPROC
...
...
@@ -204,7 +204,7 @@ owner setupapi
504 stub SXOCPAGEDLG
506 stub SXOCBATCHSETTINGS
507 stub SXOCFIXNEEDS
508
stub CTLSETLDDPATH
508
pascal16 CtlSetLddPath(word str) CtlSetLddPath16
509 stub SXCALLOCPROC
520 stub DIBUILDCLASSDRVINFOLIST
521 stub DIBUILDCOMPATDRVINFOLIST
...
...
dlls/setupapi/setupx16.h
0 → 100644
View file @
5644cdc1
#ifndef __WINE_SETUPX16_H
#define __WINE_SETUPX16_H
#include "wine/windef16.h"
typedef
UINT16
HINF16
;
typedef
UINT16
LOGDISKID16
;
/* error codes stuff */
typedef
UINT16
RETERR16
;
#define OK 0
#define IP_ERROR (UINT16)100
enum
_IP_ERR
{
ERR_IP_INVALID_FILENAME
=
IP_ERROR
+
1
,
ERR_IP_ALLOC_ERR
,
ERR_IP_INVALID_SECT_NAME
,
ERR_IP_OUT_OF_HANDLES
,
ERR_IP_INF_NOT_FOUND
,
ERR_IP_INVALID_INFFILE
,
ERR_IP_INVALID_HINF
,
ERR_IP_INVALID_FIELD
,
ERR_IP_SECTION_NOT_FOUND
,
ERR_IP_END_OF_SECTION
,
ERR_IP_PROFILE_NOT_FOUND
,
ERR_IP_LINE_NOT_FOUND
,
ERR_IP_FILEREAD
,
ERR_IP_TOOMANYINFFILES
,
ERR_IP_INVALID_SAVERESTORE
,
ERR_IP_INVALID_INFTYPE
};
typedef
struct
{
HFILE16
hInfFile
;
LPCSTR
lpInfFileName
;
}
INF_HANDLE
;
extern
INF_HANDLE
*
InfList
;
extern
WORD
InfNumEntries
;
#endif
/* __WINE_SETUPX16_H */
dlls/setupapi/setupx_main.c
View file @
5644cdc1
/*
* SETUPX library
*
* Copyright 1998 Andreas Mohr
* Copyright 1998
,2000
Andreas Mohr
*
* FIXME: Rather non-functional functions for now.
*
* See:
* http://www.geocities.com/SiliconValley/Network/5317/drivers.html
* http://www.microsoft.com/ddk/ddkdocs/win98ddk/devinst_12uw.htm
* DDK: setupx.h
* http://mmatrix.tripod.com/customsystemfolder/infsysntaxfull.html
* http://www.rdrop.com/~cary/html/inf_faq.html
*
* Stuff tested with rs405deu.exe (German Acroread 4.05 setup)
*/
#include "winreg.h"
#include "wine/winuser16.h"
#include "setupx16.h"
#include "debugtools.h"
DEFAULT_DEBUG_CHANNEL
(
setupx
);
...
...
@@ -50,3 +60,46 @@ DWORD WINAPI InstallHinfSection16( HWND16 hwnd, HINSTANCE16 hinst, LPCSTR lpszCm
FIXME
(
"(%04x, %04x, %s, %d), stub.
\n
"
,
hwnd
,
hinst
,
lpszCmdLine
,
nCmdShow
);
return
0
;
}
/*
* GenFormStrWithoutPlaceholders
*
* Any real docu ?
*/
void
WINAPI
GenFormStrWithoutPlaceHolders16
(
LPSTR
szDst
,
LPCSTR
szSrc
,
HINF16
hInf
)
{
FIXME
(
"(%p, '%s', %04x), stub.
\n
"
,
szDst
,
szSrc
,
hInf
);
strcpy
(
szDst
,
szSrc
);
}
RETERR16
WINAPI
CtlGetLddPath16
(
LOGDISKID16
ldid
,
LPSTR
szPath
)
{
FIXME
(
"(%04x, %p), stub.
\n
"
,
ldid
,
szPath
);
strcpy
(
szPath
,
"FIXME_BogusLddPath"
);
return
OK
;
}
RETERR16
WINAPI
CtlSetLddPath16
(
LOGDISKID16
ldid
,
LPSTR
szPath
)
{
FIXME
(
"(%04x, '%s'), stub.
\n
"
,
ldid
,
szPath
);
return
OK
;
}
RETERR16
WINAPI
vcpOpen16
(
LPWORD
p1
,
LPWORD
p2
)
{
FIXME
(
"(%p, %p, stub.
\n
"
,
p1
,
p2
);
return
OK
;
}
RETERR16
WINAPI
vcpClose16
(
WORD
w1
,
WORD
w2
,
WORD
w3
)
{
FIXME
(
"(%04x, %04x %04x), stub.
\n
"
,
w1
,
w2
,
w3
);
return
OK
;
}
RETERR16
WINAPI
GenInstall16
(
HINF16
hInfFile
,
LPCSTR
szInstallSection
,
WORD
wFlags
)
{
FIXME
(
"(%04x, '%s', %04x), stub. This doesn't install anything yet !
\n
"
,
hInfFile
,
szInstallSection
,
wFlags
);
return
OK
;
}
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