home *** CD-ROM | disk | FTP | other *** search
/ Programming Win32 Under the API / ProgrammingWin32UnderTheApiPatVillani.iso / pedasm.zip / Globals.cpp < prev    next >
C/C++ Source or Header  |  1998-10-23  |  2KB  |  81 lines

  1. /*        fichier Globals.cpp : fichier implementation
  2.  *
  3.  *    descr : constantes et fct de portee global au projet
  4.  *
  5.  *    projet : PEDasm
  6.  *    
  7.  *    rq:
  8.  *    Ce programme est libre de droits. Il peut etre distribue et/ou modifie
  9.  *  selon les termes de la licence 'GNU General Public License version 2'.
  10.  *    
  11.  *    Ce programme est distribue sans aucunes garanties, y compris d'utilite 
  12.  *    ni de risques encouru, quelle que soit son utilisation.
  13.  *
  14.  *    lire le fichier licence.txt fourni ou bien ecrire a :
  15.  *    the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  16.  *    pour recevoir une copie de la licence.
  17.  *
  18.  *    Copyright (C) 1997 - 1998 Nicolas Witczak <witczak@geocities.com>
  19.  */
  20.  
  21. #include "Config.h"
  22.  
  23. #include "Globals.h"
  24.  
  25. /////////////////////////////////////////////////////////////////////////
  26. // separateurs utilises ds les fichiers de sortie
  27. const char* cteHeaderSep = 
  28.     ";*******************************************************************\n";
  29.  
  30. const char* cteHeaderStLine = 
  31.     ";*" ;
  32.  
  33. const char* ctePartSep = 
  34.     ";------------------------------------------------------------\n" ;
  35.  
  36. const char* ctePartStLine = 
  37.     ";+" ;
  38.  
  39. //////////////////////////////////////////////////////////////////
  40. // fonctions globales
  41.  
  42. /** retourne le nom sans extension
  43.  *    param pszStr : nom en entree
  44.  *    param pszBuff : buffer tmp
  45.  */
  46. const char* GetBaseName( const char* pszStr )
  47. {
  48.     static char_buff pszRet ;
  49.     char* pszCur = pszRet ;
  50.     while( ( *pszStr != '.' ) && ( *pszStr != '\0' )  )
  51.         *pszCur++ = *pszStr++;
  52.     *pszCur = '\0' ;
  53.     return pszRet ;
  54. }
  55.  
  56.  
  57. char* StrDup( const char* pszSrc )
  58. {
  59.     char* pszRet = new char[ strlen(pszSrc) + 1 ] ;
  60.     strcpy( pszRet , pszSrc ) ;
  61.     return pszRet ;
  62. }
  63.  
  64. unsigned int RoundUp( unsigned int iOldVal , unsigned  int iGranularity ) 
  65. {
  66.     unsigned int nbChunk = iOldVal / iGranularity ;
  67.     if( iOldVal % iGranularity != 0 )
  68.         nbChunk ++ ;
  69.     return nbChunk * iGranularity ;
  70. }
  71.  
  72. unsigned int GetFileSize( const char* pszFileName )
  73. {
  74.     HANDLE hFile = CreateFile( pszFileName 
  75.         , GENERIC_READ ,FILE_SHARE_READ | FILE_SHARE_WRITE 
  76.         , 0 , OPEN_EXISTING , 0 , 0 );
  77.     if( hFile != 0 )
  78.         return GetFileSize( hFile , 0 ) ;
  79.     else return 0 ;
  80. }
  81.