Autor |
Beitrag |
JayEff 
      
Beiträge: 2971
Windows Vista Ultimate
D7 Enterprise
|
Verfasst: Do 14.06.07 23:28
Units, die tatsächlich nicht gebraucht werden, werden ja wegoptimiert - aber das Application-Objekt wird von der Unit Forms bereitgestellt, und ohne die gibt's keine Gauge/Progressbar/Form überhaupt.
Aber darum kümmere ich mich, sobald ich eine Komprimierung und deine FileOps drin hab.
_________________ >+++[>+++[>++++++++<-]<-]<++++[>++++[>>>+++++++<<<-]<-]<<++
[>++[>++[>>++++<<-]<-]<-]>>>>>++++++++++++++++++.+++++++.>++.-.<<.>>--.<+++++..<+.
|
|
JayEff 
      
Beiträge: 2971
Windows Vista Ultimate
D7 Enterprise
|
Verfasst: Fr 15.06.07 00:04
Dein Test-Programm wirft beim Kompilieren extrem viele Fehlermeldungen. Mal abgesehen von Zitat: | [Fehler] formTest.pas(34): Undefinierter Bezeichner: 'TFileListEntry' |
kommen 6 "Operator oder Semikolon fehlt" und einige "X erwartet aber Y gefunden" (Wobei X und Y "END;", "THEN" oder ")" o.ä. sind)
Edit: sämtliche meldungen verschwinden, wenn man aus TFileListEntry TFileList macht  Fehler deinerseits?
Edit2: Durch deine Deklaration
Delphi-Quelltext 1: 2: 3: 4:
| type TFileMode=(fmOpenRead=SysUtils.fmOpenRead, fmOpenWrite=SysUtils.fmOpenWrite, fmOpenReadWrite=SysUtils.fmOpenReadWrite); |
sind die fmOpenRead etc aus SysUtils nicht mehr benutzbar. (Es gibt keine Überladene version von (z.B.) FileStream.Create, die man so aufrufen kann)
Habe alle Vorkommnisse von TFileMode mit Word ersetzt und die Deklaration entfernt. Damit ist das ganze zwar nicht mehr DAU-proved aber man muss halt drauf achten, nur fmOpenRead, Write, und ReadWrite zu benutzen.
_________________ >+++[>+++[>++++++++<-]<-]<++++[>++++[>>>+++++++<<<-]<-]<<++
[>++[>++[>>++++<<-]<-]<-]>>>>>++++++++++++++++++.+++++++.>++.-.<<.>>--.<+++++..<+.
|
|
Sinspin
      
Beiträge: 1335
Erhaltene Danke: 118
Win 10
RIO, CE, Lazarus
|
Verfasst: Fr 15.06.07 00:26
 Das kommt davon wenn man ganz schnell noch was umbenennt! Ich habe den Fehler behoben und das Zip neu hochgeladen.
das mit dem FileMode ist mir nie aufgefallen da ich im gesammten projekt nur mit den FileOps arbeite.
Bezüglich der Komprimierung hätte ich auch noch was zu bieten.
_________________ Wir zerstören die Natur und Wälder der Erde. Wir töten wilde Tiere für Trophäen. Wir produzieren Lebewesen als Massenware um sie nach wenigen Monaten zu töten. Warum sollte unser aller Mutter, die Natur, nicht die gleichen Rechte haben?
|
|
JayEff 
      
Beiträge: 2971
Windows Vista Ultimate
D7 Enterprise
|
Verfasst: Fr 15.06.07 01:01
Die neue Version mit der Fähigkeit, mehrere Dateien zusammenzufassen, ist nun oben. Der Overhead ist auf 605 kb gestiegen, aber eigentlich kann man damit leben, finde ich
Bitte testen! 
_________________ >+++[>+++[>++++++++<-]<-]<++++[>++++[>>>+++++++<<<-]<-]<<++
[>++[>++[>>++++<<-]<-]<-]>>>>>++++++++++++++++++.+++++++.>++.-.<<.>>--.<+++++..<+.
|
|
Sinspin
      
Beiträge: 1335
Erhaltene Danke: 118
Win 10
RIO, CE, Lazarus
|
Verfasst: Fr 15.06.07 01:16
ich habe mal ein paar dateien zusammengefasst. nach der meldung "erfolgreich" kam die meldung "zugriff verweigert".
bei dem versuch die exe zu starten habe ich diese meldung erhalten:
---------------------------
D:\temp\Input\big.exe
---------------------------
D:\temp\Input\big.exe ist keine zulässige Win32-Anwendung.
---------------------------
OK
---------------------------
_________________ Wir zerstören die Natur und Wälder der Erde. Wir töten wilde Tiere für Trophäen. Wir produzieren Lebewesen als Massenware um sie nach wenigen Monaten zu töten. Warum sollte unser aller Mutter, die Natur, nicht die gleichen Rechte haben?
|
|
Sinspin
      
Beiträge: 1335
Erhaltene Danke: 118
Win 10
RIO, CE, Lazarus
|
Verfasst: Fr 15.06.07 01:20
Die Source sind unvollständig! Fehlende units: md5, HCMngr, fileOps, filesToStream!
_________________ Wir zerstören die Natur und Wälder der Erde. Wir töten wilde Tiere für Trophäen. Wir produzieren Lebewesen als Massenware um sie nach wenigen Monaten zu töten. Warum sollte unser aller Mutter, die Natur, nicht die gleichen Rechte haben?
|
|
JayEff 
      
Beiträge: 2971
Windows Vista Ultimate
D7 Enterprise
|
Verfasst: Fr 15.06.07 01:30
Ach ja. Ich hatte vergessen, eine ShowMessage rauszunehmen.
Hmmm? Unvollständig? Ich lade gleich die neuesten Versionen rauf - wesshalb deine big.exe nicht funktioniert hat, kann ich mir nicht erklären
Mit den gleich (gib mir 1-2 min) hochgeladenen Dateien waren *meine* Tests erfolgreich.
edit: neueste Versionen sind oben.
_________________ >+++[>+++[>++++++++<-]<-]<++++[>++++[>>>+++++++<<<-]<-]<<++
[>++[>++[>>++++<<-]<-]<-]>>>>>++++++++++++++++++.+++++++.>++.-.<<.>>--.<+++++..<+.
|
|
Sinspin
      
Beiträge: 1335
Erhaltene Danke: 118
Win 10
RIO, CE, Lazarus
|
Verfasst: Fr 15.06.07 02:21
Gleicher Fehler wieder: Die Exe ist etwas mehr als 10MB groß. (müsste hinkommen, nachdem was ich da reingeladen habe).
Mein DllSpy sagt folgendes:
Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17:
| DOS Header untersuchen... Datei ist ausführbar. PE offset: 256 PE Header lesen... PE Datei erkannt. PE Informationen erstellen. Sections laden. CODE DATA BSS .idata Import Directory laden. .tls .rdata .rsrc1 Resource Directory laden. Level: 0 : ResDir (0) Named:4942 ID:43A5 TimeDate:37336F7F Vers:21467.31680 Char:4ABF4EBE |
Die letzte Zeile deutet an das da was gehörig in die Hose gegangen ist.
(habe auch eine schöne Zugriffsverletzung bekommen)
Warum packst du das eigentlich in eine Ressource? Man kann das ganze doch einfach an die Exe anhängen. Ganz hinten dran schreibt man dann eine eindeutige Kennung die klarstellt das was an die Exe angehangen ist und wie groß das ganze ist. So lässt sich feststellen welcher Teil der Datei dann kopiert und entschlüsselt werden muss.
_________________ Wir zerstören die Natur und Wälder der Erde. Wir töten wilde Tiere für Trophäen. Wir produzieren Lebewesen als Massenware um sie nach wenigen Monaten zu töten. Warum sollte unser aller Mutter, die Natur, nicht die gleichen Rechte haben?
|
|
JayEff 
      
Beiträge: 2971
Windows Vista Ultimate
D7 Enterprise
|
Verfasst: Fr 15.06.07 02:25
Macht doch keinen großen Unterschied, ob es eine Resource ist, oder nicht.
Ich habe es wie gesagt erfolgreich getestet, unter Anderem an 4 MP3s, die zusammen etwas mehr als 18 MB ergaben.
Versuch es doch mal mit dem Source und sieh, woran's im compiler(debugger) hängen bleibt.
_________________ >+++[>+++[>++++++++<-]<-]<++++[>++++[>>>+++++++<<<-]<-]<<++
[>++[>++[>>++++<<-]<-]<-]>>>>>++++++++++++++++++.+++++++.>++.-.<<.>>--.<+++++..<+.
|
|
hui1991
      
Beiträge: 433
Windows XP, WIndows Vista
Turbo Delphi Explorer| Delphi, PHP,Blitzbasic
|
Verfasst: Fr 15.06.07 06:56
Hi,
also ich hab mir jetzt die neue Version runtergeladen, es funktioniert.
606KB sind groß, wenn einer mit DSL Lite unterwegs sind, weil das ewig dauert bis man das sendet.
Hoffentlich kannste das irgendwie noch kleiner machen. ^^
So und noch viel Spaß beim Programmieren ^^
MfG
hui1991
|
|
JayEff 
      
Beiträge: 2971
Windows Vista Ultimate
D7 Enterprise
|
Verfasst: Fr 15.06.07 14:19
hui1991 hat folgendes geschrieben: | Hoffentlich kannste das irgendwie noch kleiner machen. |
Das ist die Frage: Ich könnte vielleicht eine Konsolenapp draus machen, das würde die Größe wahrscheinlich vierteln oder so. Müssts mal versuchen. Vielleicht mach ich eine Option rein, mit der man wählen kann, ob man eine Konsolen-Exe will oder eine mit Fenster
Erstmal mach ich mich an temp=>resource. Ist ja ne Kleinigkeit.
Edit: Eben versucht, durch das weglassen der Form und der dazugehörigen Units erreiche ich eine Verkleinerung der temp um 20 kb.
Ich lade die Exe hoch, die die temp als resource drin hat.
_________________ >+++[>+++[>++++++++<-]<-]<++++[>++++[>>>+++++++<<<-]<-]<<++
[>++[>++[>>++++<<-]<-]<-]>>>>>++++++++++++++++++.+++++++.>++.-.<<.>>--.<+++++..<+.
|
|
Sinspin
      
Beiträge: 1335
Erhaltene Danke: 118
Win 10
RIO, CE, Lazarus
|
Verfasst: Fr 15.06.07 20:18
Ich würde mich ja gerne mal mit dem Debugger durch dein Programm durchtasten. Aber dazu fehlen mir einfach ein paar Units. Denn in deinem Source Paket sind ja nur Unit1 und Unit2 dabei. Es fehlen aber noch md5, HCMngr, fileOps und filesToStream.
Solange du die nicht mit in dein Päkchen schnürst oder zumindest eine Referenz auf die Herkunft der Units lieferst, ist das ganze ja auch noch kein Open Source. Denn es ist ja keiner in der Lage deinen Quelltext selber zu übersetzen.
_________________ Wir zerstören die Natur und Wälder der Erde. Wir töten wilde Tiere für Trophäen. Wir produzieren Lebewesen als Massenware um sie nach wenigen Monaten zu töten. Warum sollte unser aller Mutter, die Natur, nicht die gleichen Rechte haben?
|
|
Sinspin
      
Beiträge: 1335
Erhaltene Danke: 118
Win 10
RIO, CE, Lazarus
|
Verfasst: Fr 15.06.07 20:33
Mir scheint als vergisst du den Aufruf zum entleeren der Dateiliste (RemoveAll). Oder du gibst die Instanz von TFileList beim Beenden des Programmes nicht frei.
_________________ Wir zerstören die Natur und Wälder der Erde. Wir töten wilde Tiere für Trophäen. Wir produzieren Lebewesen als Massenware um sie nach wenigen Monaten zu töten. Warum sollte unser aller Mutter, die Natur, nicht die gleichen Rechte haben?
|
|
JayEff 
      
Beiträge: 2971
Windows Vista Ultimate
D7 Enterprise
|
Verfasst: Sa 16.06.07 19:54
Sinspin hat folgendes geschrieben: | Es fehlen aber noch md5, HCMngr, fileOps und filesToStream. |
Sinspin hat folgendes geschrieben: | Ich habe mal meine Klasse die ich für das zusammenfassen von Dateien geschrieben habe ein bisschen umgearbeitet und als Open Source deklariert.
Das ganze gibt es zusammen mit einer Demo die den Funktionsumfang beschreibt.
Die Demo könnte man jetzt fast mit dem vergleichen was TAR unter Linux macht. Nur das Verzeichnisse nicht beachtet werden. (das habe ich bisher einfach noch nicht eingefügt. vlt. kommt es irgendwann noch)
Selbst verfreilicht kann den Code jeder verwenden. Schließlich ist er Open Source. |
Da sind fileOps und filesToStream drin
HCMngr ist im DEC welches im ersten Post verlinkt ist.
md5 hab ich tatsächlich vergessen, gleich mal schaun, dass ich sie verlinke
edit: Tatsache, ich hatte beides im Hauptprogramm vergessen  Ist nun oben.
_________________ >+++[>+++[>++++++++<-]<-]<++++[>++++[>>>+++++++<<<-]<-]<<++
[>++[>++[>>++++<<-]<-]<-]>>>>>++++++++++++++++++.+++++++.>++.-.<<.>>--.<+++++..<+.
|
|
JayEff 
      
Beiträge: 2971
Windows Vista Ultimate
D7 Enterprise
|
Verfasst: Sa 23.06.07 20:48
Update: Das Hinzufügen mehrerer Dateien über die Shellextention bzw. über Öffnen-Mit... ist jetzt eingebaut. Wie gut es funktioniert ist die Frage, ich würde mich sehr freuen, wenn ihr diese Funktion ausgiebig testen könntet. Ich vermute, dass da immernoch ein wenig der Wurm drin ist... hier findet ihr den Code, der diese Funktion ermöglicht. Könnt ihr euch mal ansehen, falls ihr einen Fehler findet. Ich werd oben auch gleich die OneInst.pas verlinken.
Danke fürs Testen!
_________________ >+++[>+++[>++++++++<-]<-]<++++[>++++[>>>+++++++<<<-]<-]<<++
[>++[>++[>>++++<<-]<-]<-]>>>>>++++++++++++++++++.+++++++.>++.-.<<.>>--.<+++++..<+.
|
|