__foldwin32sstuff __foldwin32sstuff; foldstyleinitialization = true; /*****************************************************************/ /** Microsoft Windows 4.00 **/ /** Copyright (C) Microsoft Corp., 1993-1994 **/ /*****************************************************************/ /* * API thunks for Netware 16bit APIs called from Win32 */ enablemapdirect3216 = true; flatthunks = true; #include "types.thk" WORD NW16GetShellVersion(LPVOID lpReplyBuffer,LPWORD lpwAX,LPWORD lpwBX,LPWORD lpwCX)= WORD NW16GetShellVersionA(LPVOID lpReplyBuffer,LPWORD lpwAX,LPWORD lpwBX,LPWORD lpwCX) { } WORD NW16ConnControlRequest(BYTE bConnectionID,WORD wFunctionID,LPVOID lpRequest,LPVOID lpAnswer)= WORD NW16ConnControlRequestA(BYTE bConnectionID,WORD wFunctionID,LPVOID lpRequest,LPVOID lpAnswer) { } WORD NW16SubmitRawNCP( BYTE bConnectionID,WORD wFunctionNumber, LPVOID lpRequest,UINT wRequestSize, LPVOID lpAnswer,UINT wAnswerSize)= WORD NW16SubmitRawNCPA(BYTE bConnectionID,WORD wFunctionNumber, LPVOID lpRequest,UINT wRequestSize, LPVOID lpAnswer,UINT wAnswerSize) { } /* WORD NW16ServerConnRequest(WORD wFunctionID, BYTE bConnectionID) = WORD NW16ServerConnRequestA(WORD wFunctionID, BYTE bConnectionID) { } WORD NW16EmptyRequest(WORD bFunctionNumber)= WORD NW16EmptyRequestA(WORD bFunctionNumber) { } WORD NW16CaptureControlRequest(BYTE bSubFunctionId,BYTE bConnectionID,BYTE bPrinterID) = WORD NW16CaptureControlRequestA(BYTE bSubFunctionId,BYTE bConnectionID,BYTE bPrinterID) { } */ WORD NW16GetLoginKey(BYTE bConnectionID,LPVOID lpLoginKey)= WORD NW16GetLoginKeyA(BYTE bConnectionID,LPVOID lpLoginKey) { } WORD NW16KeyedLoginToFileServer( BYTE bConnectionID,LPSTR lpszUserName,LPBYTE lpResponse)= WORD NW16KeyedLoginToFileServerA( BYTE bConnectionID,LPSTR lpszUserName,LPBYTE lpResponse) { } WORD NW16PrinterControlRequest(BYTE bConnectionID,WORD wFunctionID, BYTE bPrinterID, LPVOID lpBuffer,WORD wBufferSize, DWORD dwObjectID) = WORD NW16PrinterControlRequestA(BYTE bConnectionID,WORD wFunctionID, BYTE bPrinterID, LPVOID lpBuffer,WORD wBufferSize, DWORD dwObjectID) { } WORD NW16EmptyShellRequest(WORD bFunctionNumber,BYTE bConnectionID)= WORD NW16EmptyShellRequestA(WORD bFunctionNumber,BYTE bConnectionID) { } WORD NW16GetConnIDTableEntry(BYTE bConnectionID,LPVOID lpAnswer)= WORD NW16GetConnIDTableEntryA(BYTE bConnectionID,LPVOID lpAnswer) { lpAnswer = output; } WORD NW16GetServerInfoTableEntry(BYTE bConnectionID,LPVOID lpAnswer)= WORD NW16GetServerInfoTableEntryA(BYTE bConnectionID,LPVOID lpAnswer) { lpAnswer = output; } WORD NW16GetDriveInfo(BYTE bDriveID,LPBYTE lpbConnectionID, LPBYTE lpbDriveFlag,LPBYTE lpbDriveDirHandle)= WORD NW16GetDriveInfoA(BYTE bDriveID,LPBYTE lpbConnectionID, LPBYTE lpbDriveFlag,LPBYTE lpbDriveDirHandle) { lpbConnectionID = output; lpbDriveFlag = output; lpbDriveDirHandle = output; } WORD NW16AttachNetworkObject(LPSTR lpszName, UINT NetType, LPBYTE lpbConnectionID)= WORD NW16AttachNetworkObjectA(LPSTR lpszName, UINT NetType, LPBYTE lpbConnectionID) { lpbConnectionID = output; } WORD NW16AttachFileServer(LPSTR lpszServerName,LPBYTE lpbConnectionID, DWORD dwFlags)= WORD NW16AttachFileServerA(LPSTR lpszServerName,LPBYTE lpbConnectionID, DWORD dwFlags) { } WORD NW16DetachFileServer(LPSTR lpszServerName,BYTE bConnectionID)= WORD NW16DetachFileServerA(LPSTR lpszServerName,BYTE bConnectionID) { } /* WORD NW16IsServerAttached(LPSTR lpszServerName,LPBYTE lpbConnectionID )= WORD NW16IsServerAttachedA(LPSTR lpszServerName,LPBYTE lpbConnectionID ); WORD NW16IsServerLoggedIn(LPSTR lpszServerName, LPBYTE lpbConnectionID, LPSTR lpszUserName, LPWORD wServerConnectionNumber )= WORD NW16IsServerLoggedInA(LPSTR lpszServerName, LPBYTE lpbConnectionID, LPSTR lpszUserName, LPWORD wServerConnectionNumber ); WORD NW16EnumUsers(LPSTR lpszServerName,LPVOID lpUser)= WORD NW16EnumUsersA(LPSTR lpszServerName,LPVOID lpUser) { lpUser = output; } WORD NW16EnumGroups(LPSTR lpszServerName,LPVOID lpUser)= WORD NW16EnumGroupsA(LPSTR lpszServerName,LPVOID lpUser) { lpUser = output; } */ WORD NW16EnumObjects(LPSTR lpszServerName,LPVOID lpUser,WORD wObjectType)= WORD NW16EnumObjectsA(LPSTR lpszServerName,LPVOID lpUser,WORD wObjectType) { lpUser = output; } WORD NW16DirE9Function(BYTE bConnectionID,WORD bFunction,BYTE bDriveID,LPSTR lpszDirPath)= WORD NW16DirE9FunctionA(BYTE bConnectionID,WORD bFunction,BYTE bDriveID,LPSTR lpszDirPath) { } UINT NW16NameServiceCall(UINT uiOpCode,UINT uiServiceType,LPSTR lpszServiceName,LPBYTE lpResult)= UINT NW16NameServiceCallA(UINT uiOpCode,UINT uiServiceType,LPSTR lpszServiceName,LPBYTE lpResult) { lpszServiceName = input; lpResult = output; } /* Dos file I/O support for the NETQ device. */ WORD NW16DosOpen(LPSTR szPath,WORD wMode,LPWORD pHandle)= WORD NW16DosOpenA(LPSTR szPath,WORD wMode,LPWORD pHandle) { } WORD NW16DosClose(WORD handle)= WORD NW16DosCloseA(WORD handle) { } WORD NW16DosWrite(int handle, LPVOID pBuf,WORD cb,LPWORD pcbDone)= WORD NW16DosWriteA(int handle, LPVOID pBuf,WORD cb,LPWORD pcbDone) { } /* Private API: NWNP32 must run this thunk before any other. NWNP32 must * pass in a flat code selector and flat data selector. * * We declare pCB32Tab as DWORD, not POINTER. We want the linear * address passed thru untouched. VOID NWThunkInit(WORD wFlatCode, WORD wFlatData, DWORD pCB32Tab) = VOID NWThunkInit(WORD wFlatCode, WORD wFlatData, DWORD pCB32Tab) { } */