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?
Thema durchsuchen
Ansicht
Themen-Optionen

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
955 Beiträge
 
#51

AW: NTFS-Komprimierung einer einzelnen Datei?

  Alt 15. Sep 2018, 18: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

Registriert seit: 1. Feb 2018
3.691 Beiträge
 
Delphi 11 Alexandria
 
#52

AW: NTFS-Komprimierung einer einzelnen Datei?

  Alt 15. Sep 2018, 20: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
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#53

AW: NTFS-Komprimierung einer einzelnen Datei?

  Alt 15. Sep 2018, 22: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

Registriert seit: 1. Feb 2018
3.691 Beiträge
 
Delphi 11 Alexandria
 
#54

AW: NTFS-Komprimierung einer einzelnen Datei?

  Alt 15. Sep 2018, 22: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
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#55

AW: NTFS-Komprimierung einer einzelnen Datei?

  Alt 15. Sep 2018, 23: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 23:12 Uhr)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 6 von 6   « Erste     456   


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 18:41 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz