Textdatei mit ListBox Syncen, Strange ErrorMsg



  • Hallo,

    Habe folgenden Code geschrieben:

    void SmsBlacklistDlg::DeleteEntry()
    {
    	CArray<int,int> arryIdx;
    	CStdioFile file("blacklist.dat", CFile::modeRead | CFile::typeText );
    	CString line,tmp;
    	CStringArray lnary;
    	while (file.ReadString (line))
    	{
    		lnary.Add(line);
    	}
    	file.Close();
    	AfxMessageBox("1 file geschlossen");
    	int acnt = lnary.GetCount();
    	POSITION listPos = m_blklistbox.GetFirstSelectedItemPosition(); // position-value - hat nichts mit index zu tun
    	while(listPos) // solange nicht NULL
    	{
    		arryIdx.Add(m_blklistbox.GetNextSelectedItem(listPos));
    	}
    
    	int cntSel = (int)arryIdx.GetSize();
    	for(int i=cntSel-1; i>=0; i--)
    	{
    		if(m_blklistbox.GetItemState(arryIdx[i], LVIS_SELECTED) & LVIS_SELECTED)
    		{
    			if(MessageBox("Wollen Sie wirklich die Markierten Einträge löschen ?", "Löschen", MB_ICONQUESTION | MB_YESNO) == IDYES)
    			{
    				m_blklistbox.DeleteItem(arryIdx[i]);
    				lnary.RemoveAt(arryIdx[i]);
    			} else { return; } 
    		} 
    	}
    	CStdioFile fileB("blacklist.dat", CFile::modeCreate | CFile::typeText );
    	acnt = lnary.GetCount(); 
    	CString msg;
    	msg.Format("%d Einträge",acnt);
    	AfxMessageBox(msg);
    	for (int ii=0; ii<acnt; ii++)
    	{
    		line = lnary.GetAt(ii);
    		AfxMessageBox(line);
    		fileB.WriteString(line);
    		//AfxMessageBox(GetLastError());
    	}
    	fileB.Close();
    }
    

    Nun habe ich das Problem, das wenn in der ListBox nur 1 Eintrag is alles ok zu sein scheint sobald aber mehrere Einträge in der ListBox/Datei sind und ich ein oder mehrere Selektiert habe und dann auf Del Klicke welche obige funktion aufruft bekomme ich folgenden Fehler:

    Beim Zugriff auf "C:\.......\blacklist.dat" wurde ein voller Datenträger gemeldet

    Weiter nix, kein errorcode etc. Und ich kann versichern HDD is nicht full.

    Vielen Dank für euere Hilfe


Anmelden zum Antworten