AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Volume Shadow Copy Service

Ein Thema von kopernikus · begonnen am 15. Nov 2014 · letzter Beitrag vom 24. Aug 2022
Antwort Antwort
Seite 5 von 6   « Erste     345 6      
Hobbycoder

Registriert seit: 22. Feb 2017
930 Beiträge
 
#41

AW: Volume Shadow Copy Service

  Alt 11. Mai 2018, 07:48
Push*
Gruß Hobbycoder
Alle sagten: "Das geht nicht.". Dann kam einer, der wusste das nicht, und hat's einfach gemacht.
  Mit Zitat antworten Zitat
generic

Registriert seit: 24. Mär 2004
Ort: bei Hannover
2.415 Beiträge
 
Delphi XE5 Professional
 
#42

AW: Volume Shadow Copy Service

  Alt 15. Mai 2018, 13:21
Hast du auch für den neuen Thread CoInitialize aufgerufen?
Coding BOTT - Video Tutorials rund um das Programmieren - https://www.youtube.com/@codingbott
  Mit Zitat antworten Zitat
Hobbycoder

Registriert seit: 22. Feb 2017
930 Beiträge
 
#43

AW: Volume Shadow Copy Service

  Alt 15. Mai 2018, 14:12
Danke generic.
Ein CoInitialize(nil) hat schon mal funktioniert
Gruß Hobbycoder
Alle sagten: "Das geht nicht.". Dann kam einer, der wusste das nicht, und hat's einfach gemacht.

Geändert von Hobbycoder (15. Mai 2018 um 14:51 Uhr)
  Mit Zitat antworten Zitat
Hobbycoder

Registriert seit: 22. Feb 2017
930 Beiträge
 
#44

AW: Volume Shadow Copy Service

  Alt 15. Mai 2018, 15:22
Scheint soweit zu laufen.
Leider habe ich das Problem, dass in der Logdatei des VssThread HResult $80042302 angegeben wird, was dem Errorcode entspricht, den das VSS zurückgibt.
Code:
Starting snapshot creation for "D:"

Initializing IVssBackupComponents Interface ...
ERROR : COM call "TVolumeShadowCopy.Initialize:VssBackupComponents.InitializeForBackup" failed.
- Returned HRESULT = $80042302
- Error text: VSS: an unexpected error was encountered
ERROR : TVolumeShadowCopy.Initialize:VssBackupComponents.InitializeForBackup (VSS: an unexpected error was encountered)
Hat da noch jemand eine Idee zu? Die Webseiten, in denen empfohlen wird einige Dienste zu starten habe ich bereits durch.
Zielsysstem ist ein Windows Server 2012 R2. Schattenkopie erstellen über "vssadmin create shadow /for=D:" funktioniert fehlerfrei.
Gruß Hobbycoder
Alle sagten: "Das geht nicht.". Dann kam einer, der wusste das nicht, und hat's einfach gemacht.

Geändert von Hobbycoder (15. Mai 2018 um 17:13 Uhr)
  Mit Zitat antworten Zitat
Hobbycoder

Registriert seit: 22. Feb 2017
930 Beiträge
 
#45

AW: Volume Shadow Copy Service

  Alt 15. Mai 2018, 18:20
Problem gelöst.

Letztere Fehlermeldung kam, weil ich das als Win32 compiliert hatte. Als Win64 läuft's.
Gruß Hobbycoder
Alle sagten: "Das geht nicht.". Dann kam einer, der wusste das nicht, und hat's einfach gemacht.
  Mit Zitat antworten Zitat
DieDolly

Registriert seit: 22. Jun 2018
2.175 Beiträge
 
#46

AW: Volume Shadow Copy Service

  Alt 23. Aug 2022, 15:53
Sehr altes Thema, möchte aber gerne frage, ob das hier so richtig ist. Basis ist die VsToolkit-Demo.

Meine ganz einfache eigene Demo. Alles was ich nicht brauche ist raus. Es wird nur eine Datei kopiert (bei CopyFile).
Muss man das pro Datei aufrufen oder kann ich bei CopyFile 10 Dateien kopieren?
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
 s: string;
 VolumeShadowCopy: TVolumeShadowCopy;
 VolList: TStringList;
begin
 VolList := TStringList.Create;

 s := GetVolumeUniqueName(SetPathDelimiter('C:\'));
 if length(s) > 0 then
  VolList.Add(s);

 if VolList.Count > 0 then
  begin
   VolumeShadowCopy := TVolumeShadowCopy.Create;
   with VolumeShadowCopy do
    begin
     ListBox1.Items.Add('(Option: Create shadow copy set)');

     // Initialize the VSS client
     Initialize(VSS_CTX_BACKUP);
     // Create the shadow copy set
     CreateSnapshotSet(VolList);

     CopyFile('C:\Windows\explorer.exe', 'C:\explorer.exe', false);

     // Execute BackupComplete, except in fast snapshot creation
     if VssContext and VSS_VOLSNAP_ATTR_DELAYED_POSTSNAPSHOT = 0 then
      begin
       // Complete the backup
       // Note that this will notify writers that the backup is successful!
       // (which means eventually log truncation)
       if VssContext and VSS_VOLSNAP_ATTR_NO_WRITERS = 0 then
        BackupComplete(True);

       DeleteAllSnapshots;
      end;
     ListBox1.Items.Add('Snapshot creation done.');
    end;

   VolList.Free;
  end
 else
  ListBox1.Items.Add('Invalid volume');
end;

Geändert von DieDolly (23. Aug 2022 um 16:28 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.140 Beiträge
 
Delphi 12 Athens
 
#47

AW: Volume Shadow Copy Service

  Alt 23. Aug 2022, 17:11
Nein.
https://docs.microsoft.com/en-us/win...nbase-copyfile

Außer du nutzt Alternativen, wie Copy von IFolder oder so.




Aber CopyFile mit diesem Pfad, wird doch auf die aktuelle Datei gehen und nicht auf den Snapshot, oder nicht?
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests

Geändert von himitsu (23. Aug 2022 um 17:14 Uhr)
  Mit Zitat antworten Zitat
DieDolly

Registriert seit: 22. Jun 2018
2.175 Beiträge
 
#48

AW: Volume Shadow Copy Service

  Alt 23. Aug 2022, 17:14
Verestehe nicht was hier an Copy verkehrt sein soll.

Falls du mich falsch verstanden hast: ich möchte mit einem CopyFile-Aufruf nicht 10 Dateien kopieren.

Meine Frage war:
darf ich an dieser Stelle überhaupt eine Datei kopieren
und
darf ich an dieser Stelle blöd ausgedrückt 10x hintereinander eine Datei kopieren

oder muss ich für jede einzelne Datei alles was drumherum ist erzeugen?

Geändert von DieDolly (23. Aug 2022 um 17:20 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.140 Beiträge
 
Delphi 12 Athens
 
#49

AW: Volume Shadow Copy Service

  Alt 23. Aug 2022, 17:20
CopyFile kann nur eine Datei.
Mehrmals Copy für mehrere Dateien
oder ein anderes "Copy", was mehrere Dateien / File-Masks kann.


Und CopyFile wird hier auf die aktuellen Dateien gehen, denn es kennt den Snapshot ja garnicht.
Also anderes Copy, welchem man den Snapshot mitgibt, oder einen Pfad verwenden, welcher für den Snapshot steht.

Zitat:
for example, \\?\GLOBALROOT\Device\HarddiskVolumeShadowCopyX\ instead of C:\
https://stackoverflow.com/questions/...files-from-vss
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
DieDolly

Registriert seit: 22. Jun 2018
2.175 Beiträge
 
#50

AW: Volume Shadow Copy Service

  Alt 23. Aug 2022, 17:21
Siehe

Verestehe nicht was hier an Copy verkehrt sein soll.

Falls du mich falsch verstanden hast: ich möchte mit einem CopyFile-Aufruf nicht 10 Dateien kopieren.

Meine Frage war:
darf ich an dieser Stelle überhaupt eine Datei kopieren
und
darf ich an dieser Stelle blöd ausgedrückt 10x hintereinander eine Datei kopieren

oder muss ich für jede einzelne Datei alles was drumherum ist erzeugen?

Das heißt
Code:
C:\Verzeichnis1 == \\?\Volume{id}\Verzeichnis1
?

Ein simples CopyFile funktioniert so jedenfalls
Code:
CopyFile('\\?\Volume{id}\Windows\explorer.exe', 'explorer.exe', false);

Geändert von DieDolly (23. Aug 2022 um 18:36 Uhr)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 5 von 6   « Erste     345 6      

 

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 08:34 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