Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: C++: Tiedostojen poisto

Sivun loppuun

Ruttiska [16.02.2003 21:02:57]

#

Osaisko joku neuvoa millä komennolla C++:lla saa poistettua kaikki tiedostot esim hakemistosta C:\Windows\ ?

Olli Vanhoja [16.02.2003 22:43:32]

#

Otat vaan sen tiedoston poisto funktion ja siihen tidoston nimeks *.* luulisin, et toimii. Kai siihen joku järkevämpiki tapa löytyy, mut just nyt tuu mieleen.

Ruttiska [16.02.2003 23:01:31]

#

Mikä se tiedostonpoisto funktio on? Ja mikä header siihen pitää includoida?

Olli Vanhoja [16.02.2003 23:49:40]

#

Oiskohan se jotenki tolleen ???
En oo ihan varma kokeile

#include <iostream.h>
#include <stdio.h>

int main()
{
     /* poistaa tiedostot */
    if (remove("C:\Windows\*.*") == 0)
       cout << "Tiedostot " << %s.\n << ",on poistettu";
    else
       perror("Jotain häikkää!");

    return 0;
}

progo [17.02.2003 07:54:07]

#

Eikä sitten ole mikään kovin hyvä poistamissysteemi.. Se on melko sama kuin del *.* joka sitten tyssää ensimmäiseen lukittuun suoritustiedostoon, joka on linkitetty prosessiin.. Ratkaisuna olisi käyttää jotain erikoisapuohjelmaa mutta joka tapauksessa tiedostojen poistaminen tuolla Ollin taktiikalla olisi suht. kot. vaikeaa. :)

thefox [17.02.2003 09:46:40]

#

Opetelkaa kysymään, hyvät ihmiset.
Win32:

BOOL DeleteFile(
  LPCTSTR lpFileName
);

En tiedä hyväksyykö tuo villejä kortteja, jos ei niin käytä vielä lisäksi FindFirstFile/FindNextFile/FindClose.
C++:an standardikirjastosta en sitten tiedä.

Olli Vanhoja [17.02.2003 11:22:42]

#

No voihan ne lukitukset poistaa

void UnlockFile(char file);
{
   int handle;
	int status;
   long lenght;
   handle = sopen(file, 0_RDONLY, SH_DENY_NO);
   if (handle < 0) {
   	// tähän virhe ikkuna
      AddErrorWind("File locking failed, can´t read socure file!",'1');
      // exit(1);
      //keksi jotain
   }
   status = lockking(handle, LK_UNLOC. lenght/2);
   if (status == 0)
   // taas jotaki tän tilalle
   	AddErrorWind("Unlock succeeded",'0');
   else
      AddErrorWind("Unlock failed!",'1');
   close(handle);
   //
}

Pöllitty Winossin koodista, mutta kuhan muuttaa noi AddErrorWind kohat joksku muuks ni toimii.

edit:
Mahtavat kommentit tuol muute :-)

progo [17.02.2003 14:14:15]

#

Juu codeguru.com ista löytyy myös ForceDel niminen apuohjelma NT/2k/XP ympäristöihin..

Olli Vanhoja [17.02.2003 15:41:58]

#

Mites se nyt tähän liitty?


Sivun alkuun

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta