Zum Inhalt springen

SHFileOperations unter XP verwenden


Fufialk

Empfohlene Beiträge

Ist es möglich die SHFileOperations unter XP zu verwenden? In diversen Foren habe ich immer nur etwas von

* Windows 95

* Windows 98

* Windows NT ab Version 4.0

* Windows ME

* Windows 2000

gelesen. Was aber meines erachtens daran lag, daß die Posts schon sehr alt waren.

Ich habe ein Programm, an welches Dateien per D&D übergeben werden, und die am Ende in unterschiedliche Ordner verschoben werden sollen. Ich erhalte aber immer eine Fehlermeldung, daß ein verschieben nicht möglich ist. Liegt das dann doch an XP?

Link zu diesem Kommentar
Auf anderen Seiten teilen

Wenn die Funktion unter XP nicht zur Verfügung stehen würde dann könntest du entweder dein Programm nicht linken oder bekämst eine entsprechende Exception zur Laufzeit.

Das das Verschieben bei dir also nicht klappt liegt also entweder an deinem Code, System, Rechtevergabe usw. Aber ohne genaue Fehlermeldung und Code bleibt das Ganze ein Ratespiel ;)

Link zu diesem Kommentar
Auf anderen Seiten teilen


if (spf_dfile(argv[f]) == true) //Aufruf der Funktion bool spf_dfile (Überprüfung auf Vorhandensein der Datei)
{
spf_dat (argv[f]); //Aufruf der Unterfunktion spf_dat (eigentliche Datenumwandlung)
char verzeichnis [200]; //Rohdatenverzeichnis
mkdir(rohdaten);
getcwd(verzeichnis,sizeof(verzeichnis)); // ermitteln des aktuellen Verzeichnisses
cout << "Verzeichnis: " << verzeichnis << "\n"; //Test

//Aus C++ Referenz Kopieren der Rohdatendatei in den entsprechenden
//Ordner (SPF\Jahr\KW_WW\Meldung\Rohdaten) und anschließendes Löschen aus Tempverzeichniß)

SHFILEOPSTRUCT fos; // SHFILEOPSTRUCT erzeugen
memset(&fos, 0, sizeof(fos)); // SHFILEOPSTRUCT mit nullen füllen
fos.wFunc = FO_COPY; // Kopieroperation auswählen
fos.pFrom = argv[f]; // Ausgangsparameter (Welche Datei soll kopiert werden?)
fos.pTo = verzeichnis; // Zielparameter (Wohin soll die Datei kopiert werden?)
fos.fFlags = FOF_NOCONFIRMMKDIR; // Flags für Rückgängigmachen und Verzeichniß ohne Nachfrage erstellen
SHFileOperation(&fos); // Operation ausführen
cout << "\nDie Datei " << argv[f] << " wurde in das Verzeichnis " << verzeichnis << " verschoben.";
fos.wFunc = FO_DELETE; // Dateien in Papierkorb verschieben
fos.pFrom = argv[f]; // Ausgangsparameter (Welche Datei soll gelöscht werden?)
fos.fFlags = FOF_NOCONFIRMATION; // Flags für Rückgängigmachen Operation ohne Nachfrage durchführen
SHFileOperation(&fos); // Operation durchführen
}; //if[/PHP]

So, das ist der Teil um den es geht. Wie gesagt, die Ordner werden angelegt, rechte sind gesetzt etc...

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...