Ignore:
Timestamp:
Jul 28, 2001, 8:04:35 PM (24 years ago)
Author:
sandervl
Message:

updates

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/kernel32/oslibdos.cpp

    r6094 r6397  
    1 /* $Id: oslibdos.cpp,v 1.71 2001-06-24 16:40:44 sandervl Exp $ */
     1/* $Id: oslibdos.cpp,v 1.72 2001-07-28 18:03:38 sandervl Exp $ */
    22/*
    33 * Wrappers for OS/2 Dos* API
     
    26032603//******************************************************************************
    26042604//******************************************************************************
     2605BOOL OSLibDosBeep(DWORD ulFreq, DWORD ulDuration)
     2606{
     2607   APIRET   rc;
     2608
     2609   if (ulDuration == -1)
     2610   {
     2611      SetLastError(ERROR_NOT_SUPPORTED_W);
     2612      return FALSE;
     2613   }
     2614   rc = DosBeep(ulFreq, ulDuration);
     2615   SetLastError(error2WinError(rc,ERROR_INVALID_HANDLE));
     2616
     2617   return (rc == 0);
     2618}
     2619//******************************************************************************
     2620//******************************************************************************
     2621ULONG OSLibDosGetModuleFileName(HMODULE hModule, LPTSTR lpszPath, DWORD cchPath)
     2622{
     2623   PTIB pTIB;
     2624   PPIB pPIB;
     2625   APIRET rc;
     2626
     2627   if(hModule == -1 || hModule == 0)
     2628   {
     2629      DosGetInfoBlocks(&pTIB, &pPIB);
     2630      hModule = pPIB->pib_hmte;
     2631   }
     2632   *lpszPath = 0;
     2633   rc = DosQueryModuleName(hModule, cchPath, lpszPath);
     2634
     2635   DWORD len = strlen(lpszPath);
     2636   SetLastError(error2WinError(rc,ERROR_INVALID_HANDLE));
     2637   return len;
     2638}
     2639//******************************************************************************
     2640//******************************************************************************
     2641ULONG OSLibDosGetProcAddress(HMODULE hModule, LPCSTR lpszProc)
     2642{
     2643   APIRET  rc;
     2644   PFN     pfn = NULL;
     2645   ULONG   ordinal = (((ULONG)lpszProc) <= 0xFFFF) ? (ULONG)lpszProc : 0;
     2646   HMODULE hmod = (HMODULE)hModule;
     2647
     2648   rc = DosQueryProcAddr( hmod, ordinal, (PSZ)lpszProc, &pfn );
     2649   if(rc == ERROR_INVALID_HANDLE && pfn == NULL) {
     2650      CHAR pszError[32], pszModule[CCHMAXPATH];
     2651
     2652      if(DosQueryModuleName( hmod, CCHMAXPATH, pszModule ) == 0 &&
     2653         DosLoadModule( pszError, 32, pszModule, &hmod ) == 0)
     2654      {
     2655          rc = DosQueryProcAddr(hmod, ordinal, (PSZ)lpszProc, &pfn);
     2656      }
     2657   }
     2658   SetLastError(error2WinError(rc,ERROR_INVALID_HANDLE));
     2659
     2660   return (ULONG)pfn;
     2661}
     2662//******************************************************************************
     2663//******************************************************************************
Note: See TracChangeset for help on using the changeset viewer.