Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

1

21.08.2014, 17:34

Problem mit passwortgeschützem Unzipper

Hallo,

Nachdem ich mich jetzt endlich mal in den 3D Bereich vorwagen wollte, habe ich mich jetzt einmal getraut, das Buch auszupacken :)

Dabei habe ich ein Problem bei den ersten Übungsaufgaben des Buches.

Bei meinem Versuch, den Unzipper für ein ZIP-Archiv (unkomprimiert) zu schreiben, bin ich auf folgendes Problem gestoßen.
Wenn ich ein Archiv ohne Passwort verwende, funktioniert das entpacken Problemlos, wenn ich jetzt aber ein passwortgeschütztes Archiv verwende, bekomme ich nur folgende Fehlermeldungen ins Logbuch.

Quellcode

1
2
3
FEHLER: Das Objekt wurde nicht gefunden! (tbfile.cpp, Zeile 355, Funktion tbReadZipFileObject)
FEHLER: Die Datei Datei1.txt@Dokumente.zip#pw konnte nicht geöffnet, gelesen, erstellt oder beschrieben werden! (tbvfile.cpp, Zeile 43, Funktion tbVFile::Init)
...


der verwendete Code (Fehler tritt m.M.n. bereits bei der Init Funktion auf):

C-/C++-Quelltext

1
2
3
4
5
6
7
    tbVFile *pVFile = new tbVFile();

    if (pVFile->Init("Datei1.txt@Dokumente.zip#pw"))    {
        TB_ERROR_FILE("Datei1.txt@Dokumente.zip", -1)   }

    if(pVFile->SaveToFile("Entzipped1.txt")) {
        TB_ERROR("Datei1 konnte nicht entzipped werden!",-1)}


Laut Buch sollte es aber so funktionieren oder habe ich etwas übersehen :)

Liebe Grüße,
Ombalat

2

02.09.2014, 19:13

Hat niemand nen Ratschlag für mich :)

3

02.09.2014, 21:04

Ich kenn mich mit dem Buch nicht so wirklich aus, daher weiß ich auch nicht, wie dort entzipped wird. Allerdings sieht es so aus, als würde er nach der Datei "Dokumente.zip#pw" suchen, welche nicht existiert. Bist du dir sicher, dass du so das pw angeben musst?

4

02.09.2014, 21:33

Sherlock Holmes.

MfG
Check

5

02.09.2014, 23:38

Ich kenn mich mit dem Buch nicht so wirklich aus, daher weiß ich auch nicht, wie dort entzipped wird. Allerdings sieht es so aus, als würde er nach der Datei "Dokumente.zip#pw" suchen, welche nicht existiert. Bist du dir sicher, dass du so das pw angeben musst?


Laut Buch stimmt es so ... Der Parameter muss die Form "Dateiname@Archiv.zip#Passwort" (lt. Buch) haben ... Bin halt ziemlich ratlos, wie gesagt, ohne PW Funktioniert es problemlos

CeDoMain

Alter Hase

Beiträge: 587

Wohnort: Ilmenau

Beruf: Student für Mechatronik

  • Private Nachricht senden

6

08.09.2014, 12:13

Hast du die neue Version für Visual C++ 2010 benutzt? Ich hab das Buch, ich schau mal nach, ob ich dir sonst noch helfen kann! :)
Mit freundlichem Gruß
CeDo
Discord: #6996 | Skype: cedomain

Lass solche persönlichen Angriffe lieber bleiben, meine sind härter.

7

08.09.2014, 12:41

Wie hast du Zip-Datei erstellt? Meines Wissens werden nur unkomprimierte zips unterstützt?
"Theory is when you know something, but it doesn’t work. Practice is when something works, but you don’t know why. Programmers combine theory and practice: Nothing works and they don’t know why." - Anon

8

08.09.2014, 18:55

Ich verwende Visual Studio 2013 Premium.

Ja, das nur unkomprimierte ZIP Archive unterstützt werden, stimmt.
Ich habe das ZIP-Archiv mit Winrar erstellt, habe die Komprimierung aber ausgestellt (Kompressionsmethode: speichern).
Und dann halt noch ein Passwort festgelegt.
Ohne Passwort funktioniert es auch so, aber mit Passwort bekomme ich den Fehler

9

13.09.2014, 15:32

Hmm bin ich echt der einzige, der dieses Problem mit der TriBase - Engine hat :(

10

13.09.2014, 15:46

Führst du dein programm aus VS heraus aus? Guck mal, ob das Arbeitsverzeichnis überhaupt richtig ist. Probier bei der Dateiangabe mal einen absoluten Pfad.

Werbeanzeige