71 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			C++
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			71 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			C++
		
	
	
		
			Executable File
		
	
	
	
	
| //
 | |
| // EX02CON.CPP
 | |
| //
 | |
| //  C++/DOS Example program for ArchiveLib 2.0
 | |
| //
 | |
| //  Copyright (c) Greenleaf Software, Inc. 1994 - 1996
 | |
| //  All Rights Reserved
 | |
| //
 | |
| // MEMBERS/FUNCTIONS DEMONSTRATED
 | |
| //
 | |
| //  ALArchiveBase::Append()
 | |
| //  ALArchiveBase::ReadDirectory()
 | |
| //  ALEntryList::ClearMarks()
 | |
| //
 | |
| // DESCRIPTION
 | |
| //
 | |
| //  This example program adds all *.CPP files to the existing DOS00.GAL
 | |
| //  archive.  If you haven't already created DOS00.GAL, you can do so
 | |
| //  easily by executing EX00CON or EX01CON.
 | |
| //
 | |
| // REVISION HISTORY
 | |
| //
 | |
| //  February 1, 1996  2.0A  : Second release
 | |
| //
 | |
| 
 | |
| #include <conio.h>
 | |
| #include <iostream.h>
 | |
| #include <iomanip.h>
 | |
| 
 | |
| #include "arclib.h"
 | |
| #include "glarc.h"
 | |
| #include "pkarc.h"
 | |
| #include "spinner.h"
 | |
| 
 | |
| int main()
 | |
| {
 | |
|  int status;
 | |
| 
 | |
|  cout << "Archive Library 2.0\nEX02CON.CPP\n\n";
 | |
|  cout << "This example program adds all *.CPP files to the existing DOS00.GAL\n";
 | |
|  cout << "archive.  If you haven't already created DOS00.GAL, you can do so\n";
 | |
|  cout << "easily by executing EX00CON or EX01CON.\n";
 | |
|  getch();
 | |
| 
 | |
|  ALSpinner monitor( AL_MONITOR_OBJECTS, cout );
 | |
| #if defined( ZIP )
 | |
|  ALPkArchive archive( "dos00.zip" );
 | |
|  ALEntryList list( &monitor, PkTools() );
 | |
| #else
 | |
|  ALGlArchive archive( "dos00.gal" );
 | |
|  ALEntryList list( &monitor, GlTools() );
 | |
| #endif
 | |
| 
 | |
|  cout << "\nAppending "
 | |
|       << archive.GetStorageObject()->mName.GetSafeName()
 | |
|       << " with all *.cpp files." << endl << endl;
 | |
| 
 | |
| //
 | |
| // These two lines don't accomplish anything, but they do demonstrate that
 | |
| // ALArchiveBase::Append() doesn't pay any attention to list entries that
 | |
| // aren't marked.
 | |
| //
 | |
| 
 | |
|  archive.ReadDirectory( list );
 | |
|  list.ClearMarks();
 | |
|  list.AddWildCardFiles( "*.cpp" );
 | |
|  status = archive.Append( list );
 | |
|  cout << "Result of append operation is " << status;
 | |
|  return 0;
 | |
| }
 |