Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Community
  • |
  • Diskussionsforum
VS: Wiederherstellen der Vorgängerversion
MoaByter
myCSharp.de - Member



Dabei seit:
Beiträge: 68
Herkunft: Berlin

Themenstarter:

VS: Wiederherstellen der Vorgängerversion

beantworten | zitieren | melden

Bei mir ist ein ziemliches Malheur passiert. Im Designer ist ein ganzer Bereich gelöscht worden. Kann man den nicht wiederherstellen? Ich finde keinen Menüpunkt dazu.
Rückgängig ist keine Option, da das Programm abgestürzt war und ich den Fehler erst beim Neustart entdeckte.
Der gelöschte Bereich - und das macht das Ganze so dramatisch - enthielt die wesentlichen zweidrittel meines Programms; den manuelle wiederherzustellen dürfte 'ne kanppe Woche dauern. Legt VS nicht automatisch ein Backup an?
Danke für Hilfe!

PS.: Die exe-Datei funktioniert, nur benötige ich den Designer mit allen Einträgen.
Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von MoaByter am .
private Nachricht | Beiträge des Benutzers
T-Virus
myCSharp.de - Experte



Dabei seit:
Beiträge: 2.087
Herkunft: Nordhausen, Nörten-Hardenberg

beantworten | zitieren | melden

Und genau dafür hat man den Code nicht nur lokal auf der Platte sondern in einem Repository.
Dann kann man einfach den Stand wiederherstellen und fertig.
Wenn du keine Sicherung von deinem Stand hast, wirst du alles händisch wieder herstellen müssen.
VS kann nur begrenzt bei solchen Fehlern helfen, vorallem bei einem Neustart ist dann i.d.R. keine Möglichkeit mehr da um den alten Stand wiederherzustellen.

Zukünftig solltest du deinen Code mindestens in einem Git Repository lokal speichern.
Oder noch besser, setzt dir einen Server dafür auf, der regelmäßig Sicherungen macht!

T-Virus
Developer, Developer, Developer, Developer....

99 little bugs in the code, 99 little bugs. Take one down, patch it around, 117 little bugs in the code.
private Nachricht | Beiträge des Benutzers
Abt
myCSharp.de - Team

Avatar #avatar-4119.png


Dabei seit:
Beiträge: 16.306

beantworten | zitieren | melden

Zitat von MoaByter
Legt VS nicht automatisch ein Backup an?
Nur wenn Du es aktiviert hast.
https://docs.microsoft.com/en-us/visualstudio/ide/reference/autorecover-environment-options-dialog-box?view=vs-2022

Wenn nicht, dann war das hoffentlich für Dich ein schmerzhaftes Unterfangen, und dass Du in Zukunft ein Quellcode-Verwaltungssystem nutzt - und zwar täglich, besser stündlich bzw nach Aufgaben.
Ansonsten heisst es eben: Kein Backup, kein Mitleid.

Das VS Autorecover Feature ersetzt kein echtes Quellcode-Verwaltungssystem!
private Nachricht | Beiträge des Benutzers
MoaByter
myCSharp.de - Member



Dabei seit:
Beiträge: 68
Herkunft: Berlin

Themenstarter:

beantworten | zitieren | melden

@ T-Virus:
Nun, mit Repository hatte ich mich nur ganz am Anfang beschäftigt, daraufhin lief alles schief - vermutlich wegne eines Fehlers meinerseits - weswegen ich das dann gelassen habe. Ich war ja noch am Lernen.

@ Abt:
Das ist aktiviert, nur ist das Verzeichnis leer - warum auch immer. Leider ist es ein schmerzliche Erfahrung und wird es für ein Weilchen bleiben. ...schluchz!

@ beide
Okay, Danke euch beiden. Dann werde ich mich mal dran machen....
Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von MoaByter am .
private Nachricht | Beiträge des Benutzers
Abt
myCSharp.de - Team

Avatar #avatar-4119.png


Dabei seit:
Beiträge: 16.306

beantworten | zitieren | melden

Der Ordner ist nur gefüllt, wenn es was zu Recovern gibt, zB nach einem VS Crash.
Das ist kein Backup-Mechanismus (weil man dafür eben SCM Software wie Git verwendet).
private Nachricht | Beiträge des Benutzers
MoaByter
myCSharp.de - Member



Dabei seit:
Beiträge: 68
Herkunft: Berlin

Themenstarter:

beantworten | zitieren | melden

Leider weiß ich nicht, warum der Fehler auftrat. Ich habe in der Form1.cs lediglich eine Methode löschen wollen. Diese wurde wg. eine sversehentlichen Doppelkilicks auf einen Button im Designer angelegt, dort hatte ich den Eintrag bereits entfernt, der wurde aber nicht gelöscht, also wollte ich es manuell tun. Dann wurde alles weiß, nach einiger Zeit schloss sich das Programm. beim Wieder-Öffnen sah ich dann das Melheur.

So what ... Fehler sind dazu da, dass mann daraus lernt...
private Nachricht | Beiträge des Benutzers
MoaByter
myCSharp.de - Member



Dabei seit:
Beiträge: 68
Herkunft: Berlin

Themenstarter:

beantworten | zitieren | melden

Danke für den Tipp. Ich werde das diesbezüglich Verpasste nachholen.
private Nachricht | Beiträge des Benutzers
Th69
myCSharp.de - Experte

Avatar #avatar-2578.jpg


Dabei seit:
Beiträge: 4.587

beantworten | zitieren | melden

Wenn du die EXE noch hast, dann kannst du daraus den Code extrahieren, z.B. mittels ILSpy.

Bei .NET 5/6 Projekten mußt du die zugehörige <ProjectName>.dll zum Dekompilieren in ILSpy öffnen (bei der EXE kam bei mir der Fehler: PE file does not contain any managed metadata).
Und dort dann nach der InitializeComponent-Methode der Form suchen und diese dann in deine ".designer.cs"-Datei kopieren (inkl. der Controlmember) - vorher aber dein Projekt sichern!!!
private Nachricht | Beiträge des Benutzers
MoaByter
myCSharp.de - Member



Dabei seit:
Beiträge: 68
Herkunft: Berlin

Themenstarter:

beantworten | zitieren | melden

Auch dir Danke, ich werd's mal probieren. Mal sehen, viel gerade vom Designer das Programm mir wieder herstellt.
private Nachricht | Beiträge des Benutzers
Th69
myCSharp.de - Experte

Avatar #avatar-2578.jpg


Dabei seit:
Beiträge: 4.587

beantworten | zitieren | melden

Hattest du Erfolg mit der Wiederherstellung der Designer-Datei?
private Nachricht | Beiträge des Benutzers
MoaByter
myCSharp.de - Member



Dabei seit:
Beiträge: 68
Herkunft: Berlin

Themenstarter:

beantworten | zitieren | melden

Danke der Nachfrage!

Mittlerweile habe ich ein BackUp gefunden, ist gar nicht so alt: Nov. '21. Als Orientierung hätte es gereicht. Ich hatte aber die Gelegenheit beim Schopf ergriffen und das Design beim Neuerstellen überarbeitet (was ich schon immer mal tun wollte ). Jetzt ist alles in sich konsistent, vor allem die Namensgebung und Anordnung der Controls.
Mit dem IL.Spy-Tool komme ich nicht so richtig klar. Verstehe ich das richtig, dass es eine Art AddOn für VS ist (Nuget)? Und dann gibt's ein weiteres Problem: Ich habe bei mir keine DLLs. Alles ist der Einfachheit halbe in der exe versammelt. Nicht günstig, besonders, wenn was verloren geht. Damals, beim Beginn mit dem Programm, kam ich mit der DLL-Erstellung nicht klar und habe mich nie wieder darum gekümmert. Das werd'ich wohl auch mal in Angrfiff nehmen müssen.

Es ist halt ein Programm nur für mich, für einen ganz speziellen Zweck - eine schwache Ausrede, auch das weiß ich.

Jetzt lege ich aber brav & artig Updates nach jeder Veränderung an. Manchmal lernen Menschen aus ihren Fehlern.

Viele Dank, gehabe dich wohl, bleibe gesund - ...lypô
private Nachricht | Beiträge des Benutzers
Th69
myCSharp.de - Experte

Avatar #avatar-2578.jpg


Dabei seit:
Beiträge: 4.587

beantworten | zitieren | melden

Das ILSpy-Tool gibt es sowohl als eigenständiges Programm als auch als Visual Studio Erweiterung.
Im Anhang habe ich dir mal ein WinForms-Programm (erstellt mit .NET Framework 4.x) geladen (es ist egal, ob man eine .NET EXE oder DLL, sind beides intern ähnliche Formate, damit dekompilieren möchte).
Attachments
private Nachricht | Beiträge des Benutzers
MoaByter
myCSharp.de - Member



Dabei seit:
Beiträge: 68
Herkunft: Berlin

Themenstarter:

beantworten | zitieren | melden

Aha, dann Danke, ich kann mich dem allerdings wahrscheinlich erst am Sonntag widmen.
Ich werde berichten.

Viele Grüße - ...lypô
private Nachricht | Beiträge des Benutzers