AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Delphi NTFS-Komprimierung einer einzelnen Datei?

NTFS-Komprimierung einer einzelnen Datei?

Ein Thema von PeterPanino · begonnen am 14. Sep 2018 · letzter Beitrag vom 15. Sep 2018
Antwort Antwort
Seite 6 von 6   « Erste     456
Hobbycoder

Registriert seit: 22. Feb 2017
546 Beiträge
 
#51

AW: NTFS-Komprimierung einer einzelnen Datei?

  Alt 15. Sep 2018, 17:23
Deswegen steht da ja SW_HIDE .
Noch schlimmer. Das heißt für den Benutzer deines Programms, ob das komprimieren erfolgreich war oder nicht, kann er raten.

Was den Rest angeht, dazu sage ich mal nichts mehr.
Gruß Hobbycoder
Alle sagten: "Das geht nicht.". Dann kam einer, der wusste das nicht, und hat's einfach gemacht.
  Mit Zitat antworten Zitat
Benutzerbild von KodeZwerg
KodeZwerg
Online

Registriert seit: 1. Feb 2018
1.925 Beiträge
 
Delphi 2010 Professional
 
#52

AW: NTFS-Komprimierung einer einzelnen Datei?

  Alt 15. Sep 2018, 19:15
Reißt euch bitte etwas zusammen und versucht zu einer sachlichen, auf das Thema bezogene Diskussion zurück zu kommen!

Wobei eigentlich schon alles gesagt wurde. Es wurden zwei Möglichkeiten präsentiert, welche da von jetzt besser oder schlechter ist, ist wohl kaum abschließend zu klären und unterliegt unterschiedlichen Philosophien.
Ich sagte ja einen hab ich noch damit alle guten Dinge drei ergeben, für Leute die tatsächlich WinApi benutzen möchten, hier bitte schön
Delphi-Quellcode:
function CompressFile(const FileName: string; Compress: Boolean): integer;
var
  FSWbemLocator : OLEVariant;
  FWMIService : OLEVariant;
  FWbemObject : OLEVariant;
begin;
  FSWbemLocator := CreateOleObject('WbemScripting.SWbemLocator');
  FWMIService := FSWbemLocator.ConnectServer('localhost', 'root\CIMV2', '', '');
  FWbemObject := FWMIService.Get(Format('CIM_DataFile.Name="%s"',[StringReplace(FileName,'\','\\',[rfReplaceAll])]));
  if Compress then
    Result:=FWbemObject.Compress()
  else
    Result:=FWbemObject.UnCompress();
end;
Keine Fehlerkontrolle, nur reines "machen" momentan.
Gruß vom KodeZwerg
Wenn ein unerwarteter Fehler aufgetreten ist, frage ich mich immer, welche Fehler erwartet wurden...
  Mit Zitat antworten Zitat
Benutzerbild von EWeiss
EWeiss

Registriert seit: 16. Okt 2010
5.650 Beiträge
 
Delphi 2010 Architect
 
#53

AW: NTFS-Komprimierung einer einzelnen Datei?

  Alt 15. Sep 2018, 21:28
Zitat:
für Leute die tatsächlich WinApi benutzen möchten, hier bitte schön
Ich verstehe eure rum Reiterei auf WinApi nicht wirklich. Sorry!

Nochmal.
Zitat:
Auch wenn man ein externes Programm startet bedient man sich der WinApi nämlich in dem fall ShellExecute/Ex.
ShellExecute bedient sich der Shellapi.. und ist das keine WinApi? Aus der (Shell32.dll (version 3.51 or later))

Die frage ist oder sollte eher lauten möchte ich eine fremde Anwendung aus meinem Code heraus starten oder eine Funktion verwenden die
am ende das gleiche tut mit dem unterschied das ich mehr Kontrolle über die Rückgabe der Funktionen habe die ich ausführen möchte.

Sorry WinApi wird in jedem fall verwendet so oder So.
Nur nochmal zur Klarstellung.

gruss
  Mit Zitat antworten Zitat
Benutzerbild von KodeZwerg
KodeZwerg
Online

Registriert seit: 1. Feb 2018
1.925 Beiträge
 
Delphi 2010 Professional
 
#54

AW: NTFS-Komprimierung einer einzelnen Datei?

  Alt 15. Sep 2018, 21:55
Zitat:
für Leute die tatsächlich WinApi benutzen möchten, hier bitte schön
Ich verstehe eure rum Reiterei auf WinApi nicht wirklich. Sorry!

Nochmal.
Zitat:
Auch wenn man ein externes Programm startet bedient man sich der WinApi nämlich in dem fall ShellExecute/Ex.
ShellExecute bedient sich der Shellapi.. und ist das keine WinApi? Aus der (Shell32.dll (version 3.51 or later))

Die frage ist oder sollte eher lauten möchte ich eine fremde Anwendung aus meinem Code heraus starten oder eine Funktion verwenden die
am ende das gleiche tut mit dem unterschied das ich mehr Kontrolle über die Rückgabe der Funktionen habe die ich ausführen möchte.

Sorry WinApi wird in jedem fall verwendet so oder So.
Nur nochmal zur Klarstellung.

gruss
ShellExecute/Ex() WinExec() etc das ist Windows Api, habe ich nie bestritten und werde ich auch nicht in Frage stellen.
Was hinter dem Exec() passiert, das hat für mich wenig bis gar nichts mit Windows Api am Hut da man selbst ja nichts steuert sondern jemand fremden ans Lenkrad lässt wie Du ja selber schreibst. Mehr mag ich dazu nicht mehr sagen, nur das noch, ich wollte mich damit auch nicht direkt an den TE wenden, auch wollte ich niemals nicht sagen das ein externes Programm zu starten generell schlecht sei, sondern andere Interessierte Leser was eventuell brauchbares weitergeben.
Gruß vom KodeZwerg
Wenn ein unerwarteter Fehler aufgetreten ist, frage ich mich immer, welche Fehler erwartet wurden...
  Mit Zitat antworten Zitat
Benutzerbild von EWeiss
EWeiss

Registriert seit: 16. Okt 2010
5.650 Beiträge
 
Delphi 2010 Architect
 
#55

AW: NTFS-Komprimierung einer einzelnen Datei?

  Alt 15. Sep 2018, 22:07
Zitat:
Was hinter dem Exec() passiert, das hat für mich wenig bis gar nichts mit Windows Api am Hut da man selbst ja nichts steuert sondern jemand fremden ans Lenkrad lässt wie Du ja selber schreibst.
Das ist korrekt.

Ich finde deinen Einsatz ja auch nicht schlecht den du hier zeigst.
Wollte das nur nochmal aufgreifen um es ins richtige Licht zu rücken.

gruss

Geändert von EWeiss (15. Sep 2018 um 22:12 Uhr)
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:48 Uhr.
Powered by vBulletin® Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2018 by Daniel R. Wolf