Commit ebc32253 authored by Alexandre Julliard's avatar Alexandre Julliard

Made MPR a separate dll.

parent 1529f584
......@@ -98,6 +98,7 @@ DLLS = \
mciseq.drv \
mciwave.drv \
midimap.drv \
mpr \
msacm \
msacm.drv \
msacm32 \
......
......@@ -35,7 +35,6 @@ LIBSUBDIRS = \
dlls/crtdll \
dlls/display \
dlls/mouse \
dlls/mpr \
dlls/ntdll \
files \
graphics \
......@@ -111,7 +110,6 @@ LIBOBJS = \
dlls/crtdll/crtdll.o \
dlls/display/display.o \
dlls/mouse/mouse.o \
dlls/mpr/mpr.o \
dlls/ntdll/ntdll.o \
files/files.o \
graphics/graphics.o \
......
......@@ -14,6 +14,7 @@ DLLFILES = \
imagehlp/libimagehlp.@LIBEXT@ \
imm32/libimm32.@LIBEXT@ \
lzexpand/liblz32.@LIBEXT@ \
mpr/libmpr.@LIBEXT@ \
msacm/libmsacm.@LIBEXT@ \
msacm32/libmsacm32.@LIBEXT@ \
msnet32/libmsnet32.@LIBEXT@ \
......@@ -132,6 +133,9 @@ libmciwave.drv.@LIBEXT@: winmm/mciwave/libmciwave.drv.@LIBEXT@
libmidimap.drv.@LIBEXT@: winmm/midimap/libmidimap.drv.@LIBEXT@
$(RM) $@ && $(LN_S) winmm/midimap/libmidimap.drv.@LIBEXT@ $@
libmpr.@LIBEXT@: mpr/libmpr.@LIBEXT@
$(RM) $@ && $(LN_S) mpr/libmpr.@LIBEXT@ $@
libmsacm.@LIBEXT@: msacm/libmsacm.@LIBEXT@
$(RM) $@ && $(LN_S) msacm/libmsacm.@LIBEXT@ $@
......
Makefile
libmpr.so.1.0
mpr.spec.c
DEFS = @DLLFLAGS@ -D__WINE__
TOPSRCDIR = @top_srcdir@
TOPOBJDIR = ../..
SRCDIR = @srcdir@
VPATH = @srcdir@
MODULE = mpr
SOVERSION = 1.0
SPEC_SRCS = mpr.spec
......@@ -15,9 +15,7 @@ C_SRCS = \
pwcache.c \
wnet.c
all: $(MODULE).o
@MAKE_RULES@
@MAKE_DLL_RULES@
### Dependencies:
......@@ -147,7 +147,9 @@ WORD WINAPI WNetUnlockQueueData16( LPSTR szQueue )
WORD WINAPI WNetAddConnection16( LPSTR lpNetPath, LPSTR lpPassWord,
LPSTR lpLocalName )
{
return WNetAddConnectionA( lpNetPath, lpPassWord, lpLocalName );
FIXME( "(%s, %p, %s): stub\n",
debugstr_a(lpNetPath), lpPassWord, debugstr_a(lpLocalName) );
return WN16_NET_ERROR;
}
/********************************************************************
......@@ -165,10 +167,36 @@ WORD WINAPI WNetCancelConnection16( LPSTR lpName, BOOL16 bForce )
WORD WINAPI WNetGetConnection16( LPSTR lpLocalName,
LPSTR lpRemoteName, UINT16 *cbRemoteName )
{
DWORD len = *cbRemoteName;
WORD retv = WNetGetConnectionA( lpLocalName, lpRemoteName, &len );
*cbRemoteName = (UINT16)len;
return retv;
const char *path;
TRACE( "local %s\n", lpLocalName );
if (lpLocalName[1] == ':')
{
int drive = toupper(lpLocalName[0]) - 'A';
switch(DRIVE_GetType(drive))
{
case TYPE_INVALID:
return WN16_BAD_LOCALNAME;
case TYPE_NETWORK:
path = DRIVE_GetLabel(drive);
if (strlen(path) + 1 > *cbRemoteName)
{
*cbRemoteName = strlen(path) + 1;
return WN16_MORE_DATA;
}
strcpy( lpRemoteName, path );
*cbRemoteName = strlen(lpRemoteName) + 1;
return WN16_SUCCESS;
case TYPE_FLOPPY:
case TYPE_HD:
case TYPE_CDROM:
TRACE("file is local\n");
return WN16_NOT_CONNECTED;
default:
return WN16_BAD_LOCALNAME;
}
}
return WN16_BAD_LOCALNAME;
}
/**************************************************************************
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment