#include #include #include #include #include #include #include #include #include #include #include #include #include #include WORD open(const String &hostName,const String &nameFile); WORD open(const String &hostName,const String &nameString,const String &saveAs); WORD makeFileName(String &pathFileName); BOOL getEntryItems(const String &pathFileName,Block &entryItems); Console winConsole; int PASCAL WinMain(HINSTANCE /*hInstance*/,HINSTANCE /*hPrevInstance*/,LPSTR lpszCmdLine,int /*nCmdShow*/) { String pathFileName(lpszCmdLine); Block entryItems; if(pathFileName.isNull()) { winConsole.writeLine("GETPAGE "); winConsole.writeLine("Input file is a text file that contains entries in the following format..."); winConsole.writeLine(" "); winConsole.writeLine("for example..."); winConsole.writeLine("www.developer.com http://www.developer.com/reference/foo.htm c:\\developer\\docs\\foo.html"); winConsole.writeLine("a '#' character located in the first position of any line indicates a comment, the line is ignored."); winConsole.writeLine("Press ENTER to exit."); winConsole.read(); return FALSE; } if(!getEntryItems(pathFileName,entryItems)) { winConsole.writeLine("Failed to read input file"); winConsole.writeLine("Press ENTER to exit"); winConsole.read(); return FALSE; } for(int itemIndex=0;itemIndex=(char*)tempString)ptr--; pathFileName=(++ptr); return TRUE; } BOOL getEntryItems(const String &pathFileName,Block &entryItems) { FileIO inFile; String strLine; entryItems.remove(); inFile.open(pathFileName); if(!inFile.isOkay())return FALSE; strLine.reserve(512); while(inFile.readLine(strLine)) { if('#'==*(char*)strLine)continue; entryItems.insert(&EntryItem(strLine.betweenString(0,' '),strLine.betweenString(' ',' '),strLine.betweenString(' ',0).betweenString(' ',0))); } return entryItems.size()?TRUE:FALSE; }