/* xb_pack.cpp XBase64 Software Library Copyright (c) 1997,2003,2014,2017 Gary A Kunkel The xb64 software library is covered under the terms of the GPL Version 3, 2007 license. Email Contact: xb64-devel@lists.sourceforge.net xb64-users@lists.sourceforge.net */ #include using namespace xb; int main(int ac,char** av) { if (ac <= 1) { std::cout << "\nUsage: xb_pack filename...\n" "\nThis program does not automatically reindex any NDX indexes." "\nUse the reindex program to reindex any indexes associated" "\nwith the database, or build your own program which executes " "\nthe Pack() method after opening all the index files " "\nassociated with the database.\n\n"; return 1; } xbXBase x; xbInt16 iRc; xbDbf * MyFile = NULL; if(( iRc = x.OpenHighestVersion( av[1], "", &MyFile )) != XB_NO_ERROR ){ std::cout << "Could not open file iRc = " << iRc << " file = " << av[1] << std::endl; x.DisplayError( iRc ); return 0; } if(( iRc = MyFile->Pack()) != XB_NO_ERROR ) { std::cout << "\nError packing DBF database ==> " << av[1] << std::endl; std::cout << " Return Code = " << iRc << std::endl; } MyFile->Close(); delete MyFile; std::cout << "\nPack Database complete...\n\n"; return 0; }