What APIs are new to OS/2 2.1?
Appearance
SECTION ONE: Documented New Features
Source: OS/2 2.1 CP Programming Reference
New CP APIs:
- DosProtectClose() - Close a Handle to a File, Pipe, or Device
APIRET DosProtectClose(HFILE hFile, FHLOCK fhFileHandleLockID)
- DosProtectClose closes a handle to a file, pipe, or device.
- DosProtectEnumAttribute() - Identify Names and Lengths of Extended Attributes
APIRET DosProtectEnumAttribute(ULONG ulRefType, PVOID pvFile, ULONG ulEntry, PVOID pvBuf, ULONG cbBuf, PULONG pulCount, ULONG ulInfoLevel, FHLOCK fhFileHandleLockID)
- DosProtectEnumAttribute identifies names and lengths of extended attributes for a specific file or subdirectory.
- DosProtectOpen() - Open a File and Return a Protected File Handle
APIRET DosProtectOpen(PSZ pszFileName, PHFILE phf, PULONG Action, ULONG cbFile, ULONG ulAttribute, ULONG fsOpenFlags, ULONG fsOpenMode, PEAOP2 peaop2, PFHLOCK pfhFileHandleLockID)
- DosProtectOpen opens a new file, an existing file, or a replacement for an existing file and returns a protected file handle. An open file can have extended attributes.
- DosProtectQueryFHState() - Query File Handle State
APIRET DosProtectQueryFHState(HFILE FileHandle, PULONG FileHandleState, FHLOCK fhFileHandleLockID)
- DosProtectQueryFHState queries the state of the specified protected file handle.
- DosProtectQueryFileInfo() - Query File Information
APIRET DosProtectQueryFileInfo(HFILE hf, ULONG ulInfoLevel, PVOID pInfo, ULONG cbInfoBuf, FHLOCK fhFileHandleLockID)
- DosProtectQueryFileInfo gets file information.
- DosProtectRead() - Read from a File, Pipe, or Device to a Buffer
APIRET DosProtectRead(HFILE hFile, PVOID pBuffer, ULONG cbRead, PULONG pcbActual, FHLOCK fhFileHandleLockID)
- DosProtectRead reads the specified number of bytes from a file, pipe, or device to a buffer location.
- DosProtectSetFHState() - Set the State of a Specified Protected File Handle
APIRET DosProtectSetFHState(HFILE FileHandle, ULONG FileHandleState, FHLOCK fhFileHandleLockID)
- DosProtectFHState sets the state of the specified protected file handle.
- DosProtectSetFileInfo() - Set File Information
APIRET DosProtectSetFileInfo(HFILE hf, ULONG ulInfoLevel, PVOID pInfoBuf, ULONG cbInfoBuf, FHLOCK fhFileHandleLockID)
- DosProtectSetFileInfo sets file information.
- DosProtectSetFileLocks() - Lock and Unlock a Range of an Open File
APIRET DosProtectSetFileLocks(HFILE hFile, PFILELOCK pflUnLock, PFILELOCK pflLock, ULONG timeout, ULONG flags, FHLOCK fhFileHandleLockID)
- DosProtectSetFileLocks locks and unlocks a range of an open file.
- DosProtectSetFilePtr() - Move the Read/Write Pointer
APIRET DosProtectSetFilePtr(HFILE FileHandle, LONG Distance, ULONG MoveType, PULONG NewPointer, FHLOCK fhFileHandleLockID)
- DosProtectSetFilePtr moves the read or write pointer according to the type of move specified.
- DosProtectSetFileSize() - Change the Size of a File
APIRET DosProtectSetFileSize(HFILE hFile, ULONG cbFile, FHLOCK fhFileHandleLockID)
- DosProtectSetFileSize changes the size of a file.
- DosProtectWrite() -- Write to a File from a Buffer
APIRET DosProtectWrite(HFILE hFile, PVOID pBuffer, ULONG cbWrite, PULONG pcbActual, FHLOCK fhFileHandleLockID)
- DosProtectWrite writes a specified number of bytes from a buffer to the specified file.
Source: OS/2 2.1 PM Programming Reference Vol. I
(no 2.1 specific information found)
Source: OS/2 2.1 PM Programming Reference Vol. II
New PM APIs:
- WinCheckInput() - Check Input Event Sources
BOOL WinCheckInput(HAB hab)
- This function is used in conjunction with the MsgInputHook hook to input simulated events into the Presentation Manager input processing system.
- WinLockPointerUpdate() - Change the Mouse Pointer into a Symbol
BOOL WinLockPointerUpdate(HWND hwndDesktop, HPOINTER hptrNew, ULONG ulTimeInterval)
- This function causes the mouse pointer to change into the symbol described by hptrNew for the period of time indicated by ulTimeInterval.
- WinLockupSystem() - Lock Up System
BOOL WinLockupSystem(HAB hab)
- This function locks up the system.
- WinQuerySysPointerData() - Return Icon Data for Specified System Pointer
BOOL WinQuerySysPointerData(HWND hwndDesktop, ULONG iptr, PICONINFO pIconInfo)
- This function returns the icon data for the specified system pointer for application use.
- WinSetPointerOwner() - Set Pointer Owner
BOOL WinSetPointerOwner(HPOINTER hptr, PID pid, BOOL fDestroy)
- This function allows an application to declare that a pointer it created can now be used by ANY process in the system (not just the process that created the pointer).
- WinSetSysPointerData() - Set System Pointer to New Icon
BOOL WinSetSysPointerData(HWND hwndDesktop, ULONG iptr, PICONINFO pIconInfo)
This function sets the given system pointer to the new icon specified by the ICONINFO structure.
- WinUnlockSystem() - Unlock System
BOOL WinUnlockSystem(HAB hab, PSZ pszPassword)
- This function causes an application program to attempt to unlock the system.
New WPS classes/methods:
WPDataFile.wpQueryAssociatedProgram .wpSetAssociatedFileIcon
WPDisk.wpEjectDisk .wpLockDrive .wpQueryDriveLockStatus
WPObject.wpQueryDefStatusView .wpSetDefStatusView
WPPower.wpAddPowerPage .wpAddPowerViewPager .wpChangePowerState .wpQueryAutoRefresh .wpQueryPowerConfirmation .wpQueryPowerManagement .wpQueryRefreshRate .wpSetAutoRefresh .wpSetPowerConfirmation .wpSetPowerManagement .wpSetRefreshRate
Source: OS/2 2.1 PM Programming Reference Vol. III
New system hooks:
- FlushBufHook() -- Flush Buffer
BOOL FlushBufHook(HAB hab)
- This hook allows applications to save data before the system reboots.
- LockupHook() -- Lockup Hook
VOID LockupHook(HAB hab, HWND hwndLockupFrame)
- This hook is called when the system locks itself up.
- MsgInputHook() -- Message Input Hook
BOOL MsgInputHook(HAB hab, PQMSG pQmsg, BOOL fSkip, PBOOL pfNoRecord)
- This hook allows applications to inject one or more events into the system input queue without having to use a journal hook, nor write to the PM input queue directly.
New PM messages:
WM_MOUSEMAP -- Remap a mouse message in the PM input queue
New Data Types:
- MT
- A menu template
- WPPower*
- pointer to an instance of WPPower
Source: OS/2 2.1 Toolkit - Getting Started
New Physical Device Driver IOCtls:
- Lockable Drive IOCtls
Category 8, Function 40H -- Unlock, Lock, and Eject Media Category 8, Function 5DH -- Diskette Control Category 8, Function 66H -- Query Lock Status
- Power Management IOCtls
Category 12, Function 40H -- Send Power Event Category 12, Function 41H -- Set Power Event Resource Category 12, Function 60H -- Query Power Status Category 12, Function 61H -- Query Power Event Category 12, Function 62H -- Query Power Info
- CD-ROM IOCtls
Category 08H, Function 63H -- Get Device Parameters
Category 80H, Function 40H -- Reset Drive Category 80H, Function 44H -- Eject Disk Category 80H, Function 46H -- Lock/Unlock Door Category 80H, Function 50H -- Seek Category 80H, Function 60H -- Device Status Category 80H, Function 61H -- Identify CD-ROM Driver Category 80H, Function 63H -- Return Sector Size Category 80H, Function 70H -- Location of Drive Head Category 80H, Function 72H -- Read Long Category 80H, Function 78H -- Return Volume Size Category 80H, Function 79H -- Get UPC
Category 81H, Function 40H -- Audio Channel Control Category 81H, Function 50H -- Play Audio Category 81H, Function 51H -- Stop Audio Category 81H, Function 52H -- Resume Audio Category 81H, Function 60H -- Return Audio-Channel Information Category 81H, Function 61H -- Return Audio-Disk Information Category 81H, Function 62H -- Return Audio-Track Information Category 81H, Function 63H -- Return Audio-Subchannel Q Information Category 81H, Function 65H -- Return Audio-Status Information Category 82H, Function 60H -- Return Drive-Letter Information