BinFiles.dll
          1 
 / ,    ,   Currency
(   )      
   .
        
       1  7.7

:  . . (clappa@mail.ru)

          
 .      DIUCL  
 UCL,     GNU General Public License .

UCL is Copyright (c) 1996-2002 Markus Franz Xaver Johannes Oberhumer
All Rights Reserved.
(c)Markus F.X.J. Oberhumer
<markus@oberhumer.com>
http://www.oberhumer.com/opensource/ucl/

DIUCL is Copyright (c) 2003 Ralf Junker - The Delphi Inspiration
All Rights Reserved.
Ralf Junker - The Delphi Inspiration
<delphi@zeitungsjunge.de>
http://www.zeitungsjunge.de/delphi/


   freeware   .
      .

<REMARK>
  1   ""     .
  1         0, ,  
    ,     
 .     V7TextFile  v7plus.
</REMARK>

  Addin.BinFile:
  FileName	-   ( )
  EOF 		-    ( )
  Size 		-   ( )
  Pos 		-        (/)
  ErrorCode	-  ,      .
		     ,  = 0 ( )
  ErrorDescription-  ,      .
		     ,    ( )
  DebugMode	-     (/)
		  1 =      , 
		  0 =   ( )


  Addin.BinFile:

  Create(FileName)
	  FileName      " ".
	    FileName,   .
	:
	FileName-  
	 : 
  
  Open(FileName, Mode=2)
	   FileName    .
	:
	FileName-  
	Mode	-   
		  0 =  
		  1 =  
		  2 =    ( )
	 : 

  Close()
	 
	 : 

  Write(Str, Count=-1, FillCharCode=32)
	   Count    Str.  Count > (Str), 
              FillCharCode.
	:
	Str	-   
	Count	-    .  = -1 ( ),   
		   .
	FillCharCode -   ,   32 ()
	 : 
	
  Read(Count=-1, ZeroSubst=" ")
	   Count .        0,
             ZeroSubst.
	:
	Count	-    .  = -1 ( ),  Count 
                   ,    ,    
		        .
                  
	ZeroSubst - ,       0.   - .
	 : 
	
  WriteBin(Number, Count=4)
	     Number  Count .   
	.
	:
	Number	-   .   -2147483648 (  00-00-00-80)
		   2147483647 (  FF-FF-FF-7F).   
                     Count.
	Count	-     (  4).   4.
	 : 
	
  ReadBin(Count=4)
	      Count .    3  
	   .   4      .
	:
	Count	-     (  4).   4.
	 :  

  WriteSingle(Value)
	      Single ( ).
          Single = 4 ,  7-8  .
	:
	Value	-   .
	 : 
        : 1      ,   
                     Single,      !
	
  ReadSingle()
	      Single (4 ).
	: 
	 :  

  WriteDouble(Value)
	      Double ( ).
          Double = 8 ,  15-16  .
	:
	Value	-   .
	 : 
        : 1      ,   
                     Double,      !
	
  ReadDouble()
	      Double (8 ).
	: 
	 :  

  WriteCurrency(Value)
	     Currency (.    ). 
          Currency = 8 ,     14-15,  4,
	 : -922337203685477.5808..922337203685477.5807
	:
	Value	-   .
	 : 
        :    1   
                        16-  .  
                     ,   Value ,
                    ..   : WriteCurrency(String(Value))
	
  ReadCurrency()
	     Currency (8 ).
	: 
	 : 
        :    1   
                         16-  .
                       ,  ReadCurrency() 
                     

  WriteHex(Str)
	   ,    Str.
	:
	Str	-    
	 : 
	
  ReadHex(Count=-1)
	   Count        .
	:
	Count	-    .  = -1 ( ),  Count 
                   ,    ,    
		        .
	 :   
	
  StrToHex(Str)
	()     
	:
	Str	-  
	 :   
	
  HexToStr(Str)
	()      
	:
	Str	-  
	 : 
	

  Addin.BinFile  /  :

  Compress(Str)
            (, ,  
         ReadHex),       , 
             1  7.7
	:
	Str	-  
	 :  

  Decompress(Str)
         ,   Compress.    .
	:
	Str	-  
	 :  

<REMARK>
       1  7.7 
 :
1. 1  " "    0  .
2.     1-32      
"   "    .
3.     1     
(,    ..),     .
4.      ~780.

          . ,
  ,     ,    
,   ,     .

 Compress   :
1.       
2.     UCL ((c)Markus F.X.J. Oberhumer http://www.oberhumer.com/opensource/ucl/)
3.      CRC32,     .
4.       1  (  
   256   192).         48..239.
    ""  (  .)    ,  
      .

 Decompress   .

  UCL     ,  
    ,   /
(, )   ,   .
</REMARK>
