void NewsAccount::GetList() { char* request = "LIST\r\n"; m_pSocket->Write(request, strlen(request)); StringA response = m_pSocket->ReadLine(); while (1) { StringA line = m_pSocket->ReadLine(); if (!strcmp(line.c_str(), ".")) { break; } char group[1024]; int last; int first; char p; sscanf(line.c_str(), "%s", group, &last, &first, &p); TRACE("%s\n", group); Record pRecord = m_list.NewRecord(); pRecord.get_Fields()[1].SetData(group); pRecord.Update(); } }
MailReaderFrame::MailReaderFrame() { { #if 0 { Table accounts; accounts.Open("C:\\accounts", "a+b"); accounts.Append(); accounts.AddField(OLESTR("ID"), FieldDef::FTyp_Long); accounts.AddField(OLESTR("Server"), FieldDef::FTyp_VarString); accounts.AddField(OLESTR("Username"), FieldDef::FTyp_VarString); accounts.AddField(OLESTR("Password"), FieldDef::FTyp_VarString); Record* pRecord = accounts.NewRecord(); pRecord->m_fields[0]->u.int32 = 1; pRecord->m_fields[1]->SetData("pop.bredband.no"); pRecord->m_fields[2]->SetData("sigler"); pRecord->m_fields[3]->SetData("04bi1u6"); pRecord->Write(&accounts); accounts.Close(); } #endif #if 0 { Table accounts; accounts.Open("C:\\news_accounts", "a+b"); accounts.Append(); accounts.AddField(OLESTR("ID"), FieldDef::FTyp_Long); accounts.AddField(OLESTR("Server"), FieldDef::FTyp_VarString); // accounts.AddField(OLESTR("Username"), FieldDef::FTyp_VarString); // accounts.AddField(OLESTR("Password"), FieldDef::FTyp_VarString); Record* pRecord = accounts.NewRecord(); pRecord->m_fields[0]->u.int32 = 1; pRecord->m_fields[1]->SetData("freetext.usenetserver.com"); // pRecord->m_fields[2]->SetData("sigler"); // pRecord->m_fields[3]->SetData("04bi1u6"); pRecord->Write(&accounts); accounts.Close(); } #endif #if 0 { Table* pTable = new Table; pTable->AddField(OLESTR("ID"), FieldDef::FTyp_Long); pTable->AddField(OLESTR("Subject"), FieldDef::FTyp_VarString); pTable->AddField(OLESTR("From"), FieldDef::FTyp_VarString); pTable->AddField(OLESTR("Headers"), FieldDef::FTyp_VarString); pTable->AddField(OLESTR("Content"), FieldDef::FTyp_VarString); pTable->AddField(OLESTR("Sent"), FieldDef::FTyp_ShortDate); pTable->AddField(OLESTR("Received"), FieldDef::FTyp_ShortDate); pTable->AddField(OLESTR("Account"), FieldDef::FTyp_Long); pTable->Open("C:\\mail", "a+b"); pTable->Append(); Table accounts; accounts.Open("C:\\accounts", "rb"); int count = accounts.GetCount(); for (int i = 0; i < count; i++) { Record* pRecord = accounts.GetRecord(i); Field* Server = pRecord->m_fields[1]; Field* Username = pRecord->m_fields[2]; Field* Password = pRecord->m_fields[3]; MailAccount account; account.m_ID = pRecord->m_fields[0]->u.int32; account.m_server = std::string((char*)Server->GetData(), Server->GetSize()); account.m_username = std::string((char*)Username->GetData(), Username->GetSize()); account.m_password = std::string((char*)Password->GetData(), Password->GetSize()); account.GetNewMail(pTable); } pTable->Close(); } #endif #if 0 { Table accounts; accounts.Open("C:\\news_accounts", "rb"); /* int count = accounts.GetCount(); for (int i = 0; i < count; i++) { */ Record* pRecord = accounts.GetRecord(0); Field* Server = pRecord->m_fields[1]; // Field* Username = pRecord->m_fields[2]; // Field* Password = pRecord->m_fields[3]; NewsAccount account; // account.m_ID = pRecord->m_fields[0]->u.int32; account.m_server = std::string((char*)Server->GetData(), Server->GetSize()); // account.m_username = std::string((char*)Username->GetData(), Username->GetSize()); // account.m_password = std::string((char*)Password->GetData(), Password->GetSize()); { account.m_list = new Table; account.m_list->Open("C:\\newsgroups", "a+b"); account.m_list->Append(); account.m_list->AddField(OLESTR("ID"), FieldDef::FTyp_Long); account.m_list->AddField(OLESTR("Group"), FieldDef::FTyp_VarString); } account.Connect(); // account.GetList(); account.Quit(); { account.m_list->Close(); } // } } #endif } { CView* view = new CView(0, L"Text"); //m_uiManager->FindMenu(_Module.GetResourceInstance(), IDR_XMLLAYOUTVIEW, &view->m_menu); m_xmlDocumentWorkspace.m_views.Add(view); } { CDocumentSheet* pSheet = new CDocumentSheet; pSheet->m_views.Add(m_xmlDocumentWorkspace.m_views[0]); m_xmlDocumentWorkspace.m_views[0]->m_ownerSheet = pSheet; m_xmlDocumentWorkspace.m_documentsSheets.Add(pSheet); } pCanvas = new ChildWindowContainer; #if 0 { ITable* m_table = OpenTable("C:\\accounts", "rb"); ViewTable(m_table); } { ITable* m_table = OpenTable("C:\\news_accounts", "rb"); ViewTable(m_table); } #endif #if 1 Database db("C:\\db", "rb"); { Table m_table = db.GetTable(OLESTR("classes")); ViewTable(m_table); } { Table m_table = db.GetTable(OLESTR("classbases")); ViewTable(m_table); } { Table table; table = db.Execute("SELECT ID, Derived, Base, Name FROM classes, classbases WHERE Name=\"AsyncIAdviseSink2\" AND ID=Derived"); // ITable* table = Execute("DELETE FROM classes WHERE Name=\"test\""); if (table != NULL) { ViewTable(table); } } #endif #if 0 { Table* m_table = new Table; m_table->Open("C:\\mail", "rb"); ViewTable(m_table); } { Table* m_table = new Table; m_table->Open("C:\\newsgroups", "rb"); ViewTable(m_table); } #endif #if 0 { m_text = new TextEdit; m_text->set_textDocument(new TextDocument()); ChildWindow* pWindow = new ChildWindow; pWindow->set_Width(new Length(200, Length::UnitAbsolute)); pWindow->set_Height(new Length(200, Length::UnitAbsolute)); ScrollViewer* pScroller = new ScrollViewer; { pScroller->set_Content(m_text); } pWindow->set_Content(pScroller); pWindow->set_TitleText(OLESTR("www.bredband.no")); pCanvas->AddChild(pWindow); } #endif set_Width(Length(1300)); set_Height(Length(1000)); set_Content(pCanvas); }