936 lines
19 KiB
Plaintext
936 lines
19 KiB
Plaintext
|
__foldwin32sstuff __foldwin32sstuff;
|
||
|
foldstyleinitialization = true;
|
||
|
|
||
|
|
||
|
/*****************************************************************/
|
||
|
/** Microsoft Windows 4.00 **/
|
||
|
/** Copyright (C) Microsoft Corp., 1992-1993 **/
|
||
|
/*****************************************************************/
|
||
|
/*
|
||
|
* API thunks for Netware 16bit APIs called from Win32 DLL
|
||
|
*/
|
||
|
|
||
|
enablemapdirect3216 = true;
|
||
|
flatthunks = true;
|
||
|
|
||
|
#include "types.thk"
|
||
|
|
||
|
/*
|
||
|
* Locale APIs
|
||
|
*
|
||
|
* nwlocale.h & nwlocale.lib
|
||
|
*/
|
||
|
|
||
|
LPVOID ThkNWLlocaleconv( LPVOID lconvPtr);
|
||
|
|
||
|
UINT ThkNWInitUnicodeTables(int countryCode, int codePage);
|
||
|
|
||
|
UINT ThkNWFreeUnicodeTables() ;
|
||
|
|
||
|
|
||
|
/*
|
||
|
* Misc. APIs
|
||
|
*
|
||
|
*/
|
||
|
|
||
|
/*
|
||
|
WORD ThkNWWordSwap(WORD swapWord);
|
||
|
|
||
|
DWORD ThkNWLongSwap(DWORD swapLong);
|
||
|
*/
|
||
|
|
||
|
|
||
|
UINT ThkNWGetRequesterVersion(LPBYTE majorVersion,LPBYTE minorVersion,LPBYTE revision)
|
||
|
{
|
||
|
majorVersion=output;
|
||
|
minorVersion=output;
|
||
|
revision =output;
|
||
|
}
|
||
|
|
||
|
/*
|
||
|
* Directory services APIs
|
||
|
*
|
||
|
* nwds*.h & nwcalls.lib
|
||
|
*
|
||
|
*/
|
||
|
|
||
|
ULONG ThkNWDSCreateContext();
|
||
|
|
||
|
DWORD ThkNWDSFreeContext(ULONG context);
|
||
|
|
||
|
UINT ThkNWDSGetContext(ULONG context,INT key, LPVOID lpvalue)
|
||
|
{
|
||
|
lpvalue = output;
|
||
|
}
|
||
|
|
||
|
UINT ThkNWDSSetContext(ULONG context,int key,LPVOID lpvalue)
|
||
|
{
|
||
|
lpvalue = input;
|
||
|
}
|
||
|
|
||
|
UINT ThkNWDSList(ULONG context,LPSTR object,LPDWORD iterationHandle,DWORD subordinates)
|
||
|
{
|
||
|
object=input;
|
||
|
iterationHandle=output;
|
||
|
}
|
||
|
|
||
|
|
||
|
UINT ThkNWDSGetObjectCount(ULONG context,DWORD buf,LPDWORD objectCount)
|
||
|
{
|
||
|
objectCount=output;
|
||
|
}
|
||
|
|
||
|
|
||
|
UINT ThkNWDSGetObjectName(ULONG context,DWORD buf,LPSTR objectName,LPDWORD attrCount,LPVOID objectInfo)
|
||
|
{
|
||
|
objectName=output;
|
||
|
objectInfo=output;
|
||
|
}
|
||
|
|
||
|
|
||
|
UINT ThkNWIsDSAuthenticated();
|
||
|
|
||
|
|
||
|
UINT ThkNWDSAuthenticate(UINT conn,
|
||
|
DWORD optionsFlag,
|
||
|
LPVOID sessionKey)
|
||
|
{
|
||
|
sessionKey= output;
|
||
|
}
|
||
|
|
||
|
UINT ThkNWDSLogin(ULONG context,DWORD optionsFlag,LPSTR objectName,LPSTR password,
|
||
|
DWORD validityPeriod);
|
||
|
|
||
|
|
||
|
UINT ThkNWDSLogout(ULONG context);
|
||
|
|
||
|
UINT ThkNWDSAuditGetObjectID(ULONG context,
|
||
|
LPSTR objectName,
|
||
|
LPUINT conn,
|
||
|
LPDWORD objectID)
|
||
|
{
|
||
|
objectID = output;
|
||
|
}
|
||
|
|
||
|
UINT ThkNWGetPreferredDSServer(LPUINT connID)
|
||
|
{
|
||
|
connID = output;
|
||
|
}
|
||
|
|
||
|
UINT ThkNWGetNearestDirectoryService(LPUINT connID)
|
||
|
{
|
||
|
connID = output;
|
||
|
}
|
||
|
|
||
|
UINT ThkNWGetNumConnections(LPWORD numConnections)
|
||
|
{
|
||
|
numConnections=output;
|
||
|
}
|
||
|
|
||
|
UINT ThkNWFreeConnectionSlot(UINT connID,BYTE disconnectType);
|
||
|
|
||
|
UINT ThkNWGetNextConnectionID(LPUINT connID)
|
||
|
{
|
||
|
connID = output;
|
||
|
}
|
||
|
|
||
|
UINT ThkNWSetPreferredDSTree(WORD length,LPSTR treeName)
|
||
|
{
|
||
|
treeName = output;
|
||
|
}
|
||
|
|
||
|
UINT ThkNWSetDefaultNameContext(WORD contextLength,LPSTR context);
|
||
|
|
||
|
UINT ThkNWGetDefaultNameContext(WORD bufferSize,LPSTR context)
|
||
|
{
|
||
|
context = output;
|
||
|
}
|
||
|
|
||
|
UINT ThkNWGetPreferredConnName(LPSTR preferredName,LPBYTE preferredType)
|
||
|
{
|
||
|
preferredName = output;
|
||
|
preferredType = output;
|
||
|
}
|
||
|
|
||
|
|
||
|
UINT ThkNWDSAbbreviateName(ULONG context,LPSTR inName,LPSTR abbreviatedName)
|
||
|
{
|
||
|
abbreviatedName=output;
|
||
|
}
|
||
|
|
||
|
UINT ThkNWDSCanonicalizeName(ULONG context,LPSTR objectName,LPSTR canonName)
|
||
|
{
|
||
|
canonName=output;
|
||
|
}
|
||
|
|
||
|
|
||
|
UINT ThkNWDSRemoveAllTypes(ULONG context,LPSTR name,LPSTR typelessName)
|
||
|
{
|
||
|
typelessName=output;
|
||
|
}
|
||
|
|
||
|
|
||
|
UINT ThkNWDSAllocBuf(UINT size,LPDWORD buf)
|
||
|
{
|
||
|
buf=output;
|
||
|
}
|
||
|
|
||
|
UINT ThkNWDSFreeBuf(DWORD buf);
|
||
|
|
||
|
/*
|
||
|
* Bindery APIs
|
||
|
*
|
||
|
* nwcalls.lib , nwmisc.h, nwbindry.h
|
||
|
*
|
||
|
*/
|
||
|
|
||
|
|
||
|
UINT ThkNWCallsInit(DWORD in, DWORD out);
|
||
|
|
||
|
UINT ThkNWGetDefaultConnectionID(LPWORD lpconn)
|
||
|
{
|
||
|
lpconn=output;
|
||
|
}
|
||
|
|
||
|
UINT ThkNWVerifyObjectPassword(
|
||
|
UINT conn,
|
||
|
LPSTR objectName,
|
||
|
WORD objectType,
|
||
|
LPSTR password);
|
||
|
|
||
|
UINT ThkNWDisallowObjectPassword(
|
||
|
UINT conn,
|
||
|
LPSTR objectName,
|
||
|
WORD objectType,
|
||
|
LPSTR disallowedPassword);
|
||
|
|
||
|
|
||
|
UINT ThkNWChangeObjectPassword(
|
||
|
UINT conn,
|
||
|
LPSTR objectName,
|
||
|
WORD objectType,
|
||
|
LPSTR oldPassword,
|
||
|
LPSTR newPassword)
|
||
|
{
|
||
|
newPassword=output;
|
||
|
}
|
||
|
|
||
|
|
||
|
UINT ThkNWWritePropertyValue(
|
||
|
UINT conn,
|
||
|
LPSTR objectName,
|
||
|
WORD objectType,
|
||
|
LPSTR propertyName,
|
||
|
BYTE segmentNumber,
|
||
|
LPBYTE segmentData,
|
||
|
BYTE moreSegments);
|
||
|
|
||
|
UINT ThkNWAddObjectToSet(
|
||
|
UINT conn,
|
||
|
LPSTR objectName,
|
||
|
WORD objectType,
|
||
|
LPSTR propertyName,
|
||
|
LPSTR memberName,
|
||
|
WORD memberType);
|
||
|
|
||
|
UINT ThkNWDeleteObjectFromSet(
|
||
|
UINT conn,
|
||
|
LPSTR objectName,
|
||
|
WORD objectType,
|
||
|
LPSTR propertyName,
|
||
|
LPSTR memberName,
|
||
|
WORD memberType);
|
||
|
|
||
|
UINT ThkNWIsObjectInSet(
|
||
|
UINT conn,
|
||
|
LPSTR objectName,
|
||
|
WORD objectType,
|
||
|
LPSTR propertyName,
|
||
|
LPSTR memberName,
|
||
|
WORD memberType);
|
||
|
|
||
|
UINT ThkNWGetObjectDiskSpaceLeft(
|
||
|
UINT conn,
|
||
|
DWORD objectID,
|
||
|
LPDWORD systemElapsedTime,
|
||
|
LPDWORD unusedDiskBlocks,
|
||
|
LPBYTE restrictionEnforced)
|
||
|
{
|
||
|
systemElapsedTime=output;
|
||
|
unusedDiskBlocks=output;
|
||
|
restrictionEnforced=output;
|
||
|
}
|
||
|
|
||
|
UINT ThkNWGetBinderyAccessLevel(
|
||
|
UINT conn,
|
||
|
LPBYTE accessLevel,
|
||
|
LPDWORD objectID)
|
||
|
{
|
||
|
accessLevel=output;
|
||
|
objectID=inout;
|
||
|
}
|
||
|
|
||
|
|
||
|
UINT ThkNWCreateProperty(
|
||
|
UINT conn,
|
||
|
LPSTR objectName,
|
||
|
WORD objectType,
|
||
|
LPSTR propertyName,
|
||
|
BYTE propertyFlags,
|
||
|
BYTE propertySecurity);
|
||
|
|
||
|
UINT ThkNWDeleteProperty(
|
||
|
UINT conn,
|
||
|
LPSTR objectName,
|
||
|
WORD objectType,
|
||
|
LPSTR propertyName);
|
||
|
|
||
|
UINT ThkNWChangePropertySecurity(
|
||
|
UINT conn,
|
||
|
LPSTR objectName,
|
||
|
WORD objectType,
|
||
|
LPSTR propertyName,
|
||
|
BYTE newPropertySecurity)
|
||
|
{
|
||
|
}
|
||
|
|
||
|
UINT ThkNWCreateObject(
|
||
|
UINT conn,
|
||
|
LPSTR objectName,
|
||
|
WORD objectType,
|
||
|
BYTE objectFlags,
|
||
|
BYTE objectSecurity)
|
||
|
{
|
||
|
}
|
||
|
|
||
|
|
||
|
UINT ThkNWDeleteObject(
|
||
|
UINT conn,
|
||
|
LPSTR objectName,
|
||
|
WORD objectType)
|
||
|
{
|
||
|
}
|
||
|
|
||
|
|
||
|
UINT ThkNWRenameObject(
|
||
|
UINT conn,
|
||
|
LPSTR oldObjectName,
|
||
|
LPSTR newObjectName,
|
||
|
WORD objectType)
|
||
|
{
|
||
|
}
|
||
|
|
||
|
|
||
|
UINT ThkNWChangeObjectSecurity(
|
||
|
UINT conn,
|
||
|
LPSTR objectName,
|
||
|
WORD objectType,
|
||
|
BYTE newObjectSecurity)
|
||
|
{
|
||
|
}
|
||
|
|
||
|
|
||
|
UINT ThkNWOpenBindery(UINT conn)
|
||
|
{
|
||
|
}
|
||
|
|
||
|
UINT ThkNWCloseBindery(UINT conn)
|
||
|
{
|
||
|
}
|
||
|
|
||
|
|
||
|
UINT ThkNWScanObjectTrusteePaths(
|
||
|
UINT conn,
|
||
|
DWORD objectID,
|
||
|
WORD volNumber,
|
||
|
LPWORD sequenceNumber,
|
||
|
LPBYTE accessRights,
|
||
|
LPSTR dirPath)
|
||
|
{
|
||
|
sequenceNumber=inout;
|
||
|
accessRights=inout;
|
||
|
dirPath=inout;
|
||
|
}
|
||
|
|
||
|
|
||
|
UINT ThkNWGetObjectEffectiveRights(
|
||
|
UINT conn,
|
||
|
DWORD objectID,
|
||
|
BYTE dirHandle,
|
||
|
LPSTR path,
|
||
|
LPWORD rightsMask)
|
||
|
{
|
||
|
path=output;
|
||
|
rightsMask=output;
|
||
|
}
|
||
|
|
||
|
|
||
|
UINT ThkNWScanObject(WORD conn,LPSTR searchName,
|
||
|
WORD searchType,LPDWORD objectID,
|
||
|
LPSTR objectName,LPWORD objectType,
|
||
|
LPBYTE hasPropertiesFlag,
|
||
|
LPBYTE objectFlags,
|
||
|
LPBYTE objectSecurity)
|
||
|
{
|
||
|
searchName = input;
|
||
|
|
||
|
objectID = inout;
|
||
|
|
||
|
objectName = output;
|
||
|
objectType = output;
|
||
|
hasPropertiesFlag = output;
|
||
|
objectFlags = output;
|
||
|
objectSecurity = output;
|
||
|
}
|
||
|
|
||
|
|
||
|
UINT ThkNWScanProperty(WORD conn,
|
||
|
LPSTR objectName,
|
||
|
WORD objectType,
|
||
|
LPSTR searchPropertyName,
|
||
|
LPDWORD sequenceNumber,
|
||
|
LPSTR propertyName,
|
||
|
LPBYTE propertyFlags,
|
||
|
LPBYTE propertySecurity,
|
||
|
LPBYTE hasValueFlag,
|
||
|
LPBYTE moreFlag)
|
||
|
{
|
||
|
objectName = input;
|
||
|
searchPropertyName=input;
|
||
|
|
||
|
sequenceNumber=inout;
|
||
|
|
||
|
propertyName = output;
|
||
|
propertyFlags = output;
|
||
|
propertySecurity = output;
|
||
|
hasValueFlag = output;
|
||
|
moreFlag=output;
|
||
|
}
|
||
|
|
||
|
UINT ThkNWReadPropertyValue(
|
||
|
WORD conn,
|
||
|
LPSTR objectName,
|
||
|
WORD objectType,
|
||
|
LPSTR propertyName,
|
||
|
BYTE segmentNumber,
|
||
|
LPBYTE segmentData,
|
||
|
LPBYTE moreSegments,
|
||
|
LPBYTE flags)
|
||
|
{
|
||
|
|
||
|
objectName = input;
|
||
|
propertyName = input;
|
||
|
|
||
|
|
||
|
segmentData = output;
|
||
|
moreSegments = output;
|
||
|
flags = output;
|
||
|
}
|
||
|
|
||
|
|
||
|
UINT ThkNWGetObjectName(
|
||
|
WORD conn,
|
||
|
DWORD objectID,
|
||
|
LPSTR objectName,
|
||
|
LPWORD objectType)
|
||
|
{
|
||
|
objectName = output;
|
||
|
objectType = output;
|
||
|
}
|
||
|
|
||
|
UINT ThkNWGetObjectID(UINT conn,LPSTR objectName,WORD objectType,LPDWORD objectID)
|
||
|
{
|
||
|
objectName=input;
|
||
|
objectID=output;
|
||
|
}
|
||
|
|
||
|
|
||
|
/*
|
||
|
* Connection management
|
||
|
*
|
||
|
*
|
||
|
*/
|
||
|
|
||
|
UINT ThkNWGetConnInfo(UINT conn, WORD type, LPVOID data)
|
||
|
{
|
||
|
data=output;
|
||
|
}
|
||
|
|
||
|
|
||
|
UINT ThkNWLockConnection(UINT conn);
|
||
|
|
||
|
UINT ThkNWGetConnectionUsageStats(
|
||
|
UINT conn,
|
||
|
UINT connNumber,
|
||
|
LPVOID statusBuffer)
|
||
|
{
|
||
|
statusBuffer = output;
|
||
|
}
|
||
|
|
||
|
|
||
|
UINT ThkNWGetConnectionInformation(
|
||
|
UINT conn,
|
||
|
UINT connNumber,
|
||
|
LPSTR objectName,
|
||
|
LPWORD objectType,
|
||
|
LPDWORD objectID,
|
||
|
LPBYTE loginTime)
|
||
|
{
|
||
|
objectName = output;
|
||
|
objectType = output;
|
||
|
objectID = output;
|
||
|
loginTime = output;
|
||
|
|
||
|
}
|
||
|
|
||
|
UINT ThkNWGetConnectionIDFromName(DWORD nameLen,
|
||
|
LPBYTE name,
|
||
|
UINT *conn)
|
||
|
{ name = input;
|
||
|
conn = output;
|
||
|
}
|
||
|
|
||
|
UINT ThkNWGetInternetAddress(
|
||
|
UINT conn,
|
||
|
UINT connNumber,
|
||
|
LPBYTE internetAddress)
|
||
|
{
|
||
|
internetAddress=output;
|
||
|
}
|
||
|
|
||
|
VOID ThkNWGetMaximumConnections(LPWORD maxConnections)
|
||
|
{
|
||
|
maxConnections=output;
|
||
|
}
|
||
|
|
||
|
|
||
|
UINT ThkNWGetConnectionList(
|
||
|
WORD mode,
|
||
|
LPUINT connListBuffer,
|
||
|
WORD connListSize,
|
||
|
LPWORD numConnections)
|
||
|
{
|
||
|
connListBuffer=output;
|
||
|
numConnections=output;
|
||
|
}
|
||
|
|
||
|
|
||
|
UINT ThkNWGetConnectionStatus(
|
||
|
UINT conn,
|
||
|
LPVOID connInfo,
|
||
|
WORD connInfoSize)
|
||
|
{
|
||
|
connInfo=output;
|
||
|
}
|
||
|
|
||
|
|
||
|
UINT ThkNWGetConnectionNumber(
|
||
|
UINT conn,
|
||
|
LPUINT connNumber)
|
||
|
{
|
||
|
connNumber=output;
|
||
|
}
|
||
|
|
||
|
|
||
|
UINT ThkNWClearConnectionNumber(
|
||
|
UINT conn,
|
||
|
UINT connNumber);
|
||
|
|
||
|
UINT ThkNWGetConnectionHandle(
|
||
|
LPBYTE serverName,
|
||
|
WORD mode,
|
||
|
LPUINT conn,
|
||
|
LPWORD connScope)
|
||
|
{
|
||
|
conn=output;
|
||
|
connScope=output;
|
||
|
}
|
||
|
|
||
|
|
||
|
UINT ThkNWSetPrimaryConnectionID(UINT conn);
|
||
|
|
||
|
UINT ThkNWGetPrimaryConnectionID(LPUINT conn)
|
||
|
{
|
||
|
conn=output;
|
||
|
}
|
||
|
|
||
|
|
||
|
UINT ThkNWGetObjectConnectionNumbers(
|
||
|
UINT conn,
|
||
|
LPSTR objectName,
|
||
|
WORD objectType,
|
||
|
LPWORD numConnections,
|
||
|
LPUINT connList,
|
||
|
WORD maxConnections)
|
||
|
{
|
||
|
numConnections=output;
|
||
|
connList=output;
|
||
|
}
|
||
|
|
||
|
|
||
|
UINT ThkNWGetConnListFromObject(
|
||
|
UINT conn,
|
||
|
DWORD objectID,
|
||
|
DWORD searchConnNum,
|
||
|
LPWORD connListLen,
|
||
|
LPDWORD connList
|
||
|
)
|
||
|
{
|
||
|
connListLen=output;
|
||
|
connList=output;
|
||
|
}
|
||
|
|
||
|
|
||
|
UINT ThkNWIsIDInUse(UINT conn);
|
||
|
|
||
|
UINT ThkNWGetPreferredServer(LPUINT conn)
|
||
|
{
|
||
|
conn=output;
|
||
|
}
|
||
|
|
||
|
UINT ThkNWSetPreferredServer(UINT conn)
|
||
|
{
|
||
|
}
|
||
|
|
||
|
|
||
|
/*
|
||
|
* File server operations
|
||
|
*
|
||
|
* nwserver.h
|
||
|
*
|
||
|
*/
|
||
|
|
||
|
|
||
|
|
||
|
UINT ThkNWAttachToFileServer(
|
||
|
LPSTR serverName,
|
||
|
WORD scopeFlag,
|
||
|
LPUINT newConnID)
|
||
|
{
|
||
|
newConnID = output;
|
||
|
}
|
||
|
|
||
|
|
||
|
UINT ThkNWGetFileServerLoginStatus(
|
||
|
UINT conn,
|
||
|
LPBYTE loginEnabledFlag)
|
||
|
{
|
||
|
loginEnabledFlag=output;
|
||
|
}
|
||
|
|
||
|
|
||
|
UINT ThkNWDetachFromFileServer(UINT conn);
|
||
|
|
||
|
UINT ThkNWGetFileServerName(UINT conn, LPSTR serverName);
|
||
|
|
||
|
UINT ThkNWLogoutFromFileServer(UINT conn);
|
||
|
|
||
|
UINT ThkNWLoginToFileServer(
|
||
|
UINT conn,
|
||
|
LPSTR objectName,
|
||
|
WORD objectType,
|
||
|
LPSTR password);
|
||
|
|
||
|
|
||
|
UINT ThkNWEnableFileServerLogin(UINT conn);
|
||
|
|
||
|
UINT ThkNWDisableFileServerLogin(UINT conn);
|
||
|
|
||
|
UINT ThkNWGetFileServerDescription(
|
||
|
UINT conn,
|
||
|
LPSTR companyName,
|
||
|
LPSTR revision,
|
||
|
LPSTR revisionDate,
|
||
|
LPSTR copyrightNotice)
|
||
|
{
|
||
|
|
||
|
companyName=output;
|
||
|
revision=output;
|
||
|
revisionDate=output;
|
||
|
copyrightNotice=output;
|
||
|
|
||
|
}
|
||
|
|
||
|
|
||
|
UINT ThkNWGetFileServerVersion(
|
||
|
UINT conn,
|
||
|
LPWORD serverVersion)
|
||
|
{
|
||
|
serverVersion=output;
|
||
|
}
|
||
|
|
||
|
|
||
|
UINT ThkNWAttachToFileServerByConn(
|
||
|
UINT conn,
|
||
|
LPSTR serverName,
|
||
|
WORD scopeFlag,
|
||
|
LPUINT newConnID)
|
||
|
{
|
||
|
newConnID=output;
|
||
|
}
|
||
|
|
||
|
|
||
|
UINT ThkNWGetVolumeName(UINT conn,WORD volNum,LPSTR volName)
|
||
|
{
|
||
|
volName=output;
|
||
|
}
|
||
|
|
||
|
UINT ThkNWParsePath(LPSTR path,
|
||
|
LPSTR serverName,
|
||
|
LPUINT conn,
|
||
|
LPSTR volName,
|
||
|
LPSTR dirPath)
|
||
|
{
|
||
|
serverName=output;
|
||
|
conn=output;
|
||
|
volName=output;
|
||
|
dirPath=output;
|
||
|
}
|
||
|
|
||
|
|
||
|
UINT ThkNWGetDriveStatus(
|
||
|
UINT driveNumber,
|
||
|
WORD pathFormat,
|
||
|
LPWORD status,
|
||
|
LPUINT conn,
|
||
|
LPSTR rootPath,
|
||
|
LPSTR relativePath,
|
||
|
LPSTR fullPath)
|
||
|
{
|
||
|
status = output;
|
||
|
conn = output;
|
||
|
rootPath = output;
|
||
|
relativePath= output;
|
||
|
fullPath= output;
|
||
|
}
|
||
|
|
||
|
UINT ThkNWSetDriveBase(
|
||
|
UINT driveNumber,
|
||
|
UINT conn,
|
||
|
BYTE dirHandle,
|
||
|
LPSTR dirPath,
|
||
|
WORD driveScope)
|
||
|
{
|
||
|
}
|
||
|
|
||
|
UINT ThkNWDeleteDriveBase(
|
||
|
UINT driveNumber,
|
||
|
WORD driveScope)
|
||
|
{
|
||
|
}
|
||
|
|
||
|
UINT ThkNWConvertHandle(UINT conn,
|
||
|
BYTE accessMode,
|
||
|
LPBYTE NetWareHandle,
|
||
|
WORD handleSize,
|
||
|
DWORD fileSize,
|
||
|
LPWORD fileHandle)
|
||
|
{
|
||
|
NetWareHandle = input;
|
||
|
fileHandle = output;
|
||
|
}
|
||
|
|
||
|
/*
|
||
|
*
|
||
|
* Queue Management Services
|
||
|
*
|
||
|
*/
|
||
|
UINT ThkNWAbortServicingQueueJob(UINT conn,
|
||
|
DWORD queueID,
|
||
|
DWORD jobNumber,
|
||
|
UINT fileHandle);
|
||
|
|
||
|
UINT ThkNWChangeQueueJobEntry2(UINT conn,DWORD queueID,LPBYTE job);
|
||
|
|
||
|
UINT ThkNWCloseFileAndStartQueueJob2(UINT conn,
|
||
|
DWORD queueID,
|
||
|
DWORD jobNumber,
|
||
|
UINT fileHandle);
|
||
|
|
||
|
UINT ThkNWCreateQueueFile2(UINT conn,
|
||
|
DWORD queueID,
|
||
|
LPBYTE job,
|
||
|
UINT *fileHandle);
|
||
|
|
||
|
|
||
|
UINT ThkNWGetQueueJobFileSize2(
|
||
|
UINT conn,
|
||
|
DWORD queueID,
|
||
|
WORD jobNumber,
|
||
|
LPDWORD fileSize)
|
||
|
{
|
||
|
fileSize = output;
|
||
|
}
|
||
|
|
||
|
|
||
|
UINT ThkNWGetQueueJobList2(
|
||
|
UINT conn,
|
||
|
DWORD queueID,
|
||
|
DWORD queueStartPosition,
|
||
|
LPBYTE job)
|
||
|
{
|
||
|
}
|
||
|
|
||
|
UINT ThkNWReadQueueCurrentStatus2(
|
||
|
UINT conn,
|
||
|
DWORD queueID,
|
||
|
LPBYTE queueStatus,
|
||
|
LPWORD numberOfJobs,
|
||
|
LPWORD numberOfServers,
|
||
|
LPDWORD serverIDlist,
|
||
|
LPWORD serverConnList)
|
||
|
{
|
||
|
}
|
||
|
|
||
|
UINT ThkNWReadQueueJobEntry2(
|
||
|
UINT conn,
|
||
|
DWORD queueID,
|
||
|
WORD jobNumber,
|
||
|
LPBYTE job)
|
||
|
{
|
||
|
job=output;
|
||
|
}
|
||
|
|
||
|
UINT ThkNWRemoveJobFromQueue2(
|
||
|
UINT conn,
|
||
|
DWORD queueID,
|
||
|
WORD jobNumber);
|
||
|
|
||
|
UINT ThkNWSetQueueCurrentStatus2(
|
||
|
UINT conn,
|
||
|
DWORD queueID,
|
||
|
DWORD queueStatus);
|
||
|
|
||
|
/*
|
||
|
*
|
||
|
* Printer Services
|
||
|
*
|
||
|
*/
|
||
|
UINT ThkNWGetCaptureFlags(BYTE LPTDevice,
|
||
|
LPBYTE captureFlagsRW,
|
||
|
LPBYTE captureFlagsRO)
|
||
|
{
|
||
|
captureFlagsRW=output;
|
||
|
captureFlagsRO=output;
|
||
|
}
|
||
|
|
||
|
|
||
|
UINT ThkNWGetPrinterDefaults(LPBYTE status,
|
||
|
LPBYTE flags,
|
||
|
LPBYTE tabSize,
|
||
|
LPBYTE serverPrinter,
|
||
|
LPBYTE numberCopies,
|
||
|
LPBYTE formType,
|
||
|
LPSTR bannerText,
|
||
|
LPBYTE localLPTDevice,
|
||
|
LPWORD captureTimeOutCount,
|
||
|
LPBYTE captureOnDeviceClose)
|
||
|
{
|
||
|
flags=output;
|
||
|
tabSize=output;
|
||
|
serverPrinter=output;
|
||
|
numberCopies=output;
|
||
|
formType=output;
|
||
|
bannerText=output;
|
||
|
localLPTDevice=output;
|
||
|
captureTimeOutCount=output;
|
||
|
captureOnDeviceClose=output;
|
||
|
}
|
||
|
|
||
|
|
||
|
|
||
|
UINT ThkNWStartQueueCapture(UINT conn,
|
||
|
BYTE LPTDevice,
|
||
|
DWORD queueID,
|
||
|
LPSTR queueName);
|
||
|
|
||
|
UINT ThkNWGetCaptureStatus(BYTE LPTDevice);
|
||
|
|
||
|
UINT ThkNWFlushCapture(BYTE LPTDevice);
|
||
|
|
||
|
UINT ThkNWEndCapture(BYTE LPTDevice);
|
||
|
|
||
|
UINT ThkNWCancelCapture(BYTE LPTDevice);
|
||
|
|
||
|
|
||
|
/*
|
||
|
* Print server management APIs
|
||
|
*/
|
||
|
|
||
|
|
||
|
UINT ThkNWPSComAttachToPrintServer(
|
||
|
WORD connType,
|
||
|
DWORD connID,
|
||
|
WORD timeOut,
|
||
|
LPSTR pServerName,
|
||
|
LPWORD spxID)
|
||
|
{
|
||
|
pServerName=input;
|
||
|
spxID=output;
|
||
|
}
|
||
|
|
||
|
|
||
|
UINT ThkNWPSComLoginToPrintServer(
|
||
|
WORD connType,
|
||
|
DWORD connID,
|
||
|
WORD spxID,
|
||
|
LPBYTE accessLevel);
|
||
|
|
||
|
UINT ThkNWPSComDetachFromPrintServer(WORD spxID);
|
||
|
|
||
|
|
||
|
UINT ThkNWPSComGetPrinterStatus(
|
||
|
WORD spxID,
|
||
|
WORD printerID,
|
||
|
LPBYTE status,
|
||
|
LPBYTE troubleCode,
|
||
|
LPBYTE active,
|
||
|
LPBYTE serviceMode,
|
||
|
LPWORD formNumber,
|
||
|
LPSTR formName,
|
||
|
LPSTR printerName)
|
||
|
{
|
||
|
status=output;
|
||
|
troubleCode=output;
|
||
|
active=output;
|
||
|
serviceMode=output;
|
||
|
formNumber=output;
|
||
|
formName=output;
|
||
|
printerName=output;
|
||
|
}
|
||
|
|
||
|
UINT ThkNWPSComGetNextRemotePrinter(
|
||
|
WORD spxID,
|
||
|
LPWORD printerID,
|
||
|
LPWORD printerType,
|
||
|
LPSTR printerName)
|
||
|
{
|
||
|
printerID=output;
|
||
|
printerType=output;
|
||
|
printerName=output;
|
||
|
}
|
||
|
|
||
|
|
||
|
UINT ThkNWPSComGetQueuesServiced(
|
||
|
WORD spxID,
|
||
|
WORD printerID,
|
||
|
LPWORD sequence,
|
||
|
LPSTR nServerName,
|
||
|
LPSTR queueName,
|
||
|
LPWORD priority)=
|
||
|
UINT ThkNWPSComGetQueuesServiced(
|
||
|
WORD spxID,
|
||
|
WORD printerID,
|
||
|
LPWORD sequence,
|
||
|
LPSTR nServerName,
|
||
|
LPSTR queueName,
|
||
|
LPWORD priority)
|
||
|
{
|
||
|
sequence=output;
|
||
|
nServerName=output;
|
||
|
queueName=output;
|
||
|
priority=output;
|
||
|
}
|
||
|
|
||
|
|