Things I shudda have done years ago...
Eines der probatesten Mittel, einen Buildbreak zu vermeiden ist meiner Ansicht nach konsequentes Auschecken von Dateien mit eingeschaltetem Schreibschutzbit ("read-only"). Denn eine Datei, die man nicht aus Versehen geändert hat, kann man auch nicht vergessen, einzuchecken. Will man in Visual Studio 2005 eine schreibgeschützte Datei ändern, so erscheint folgender Dialog, der einem gestattet, die Datei beschreibbar zu machen:
But nutso with VS6! Da muß man sich dann leider auf irgendeinem umständlichen Wege die Datei beschreibbar machen, beispielsweise indem man so tut als wolle man sie abspeichern. Dann landet man in VS6 via "File-Save"-Dialog in dem Verzeichnis, in dem die Datei liegt und kann über das Kontextmenü die Dateieigenschaften anzeigen und das Häkchen bei "Read-Only" entfernen:
Eine andere Variante ist die, in einer Konsole in dem Unterverzeichnis, in dem die zu ändernde Datei liegt, ein "attrib -r *.* /s" aufzurufen, denn meist muß man ja noch weitere Dateien parallel oder unterhalb des fraglichen Verzeichnisses ändern. Aber das führt ja eigentlich das Auschecken mit Schreibschutz ad absurdum. Am schönsten wäre es deshalb, wenn man aus VS6 heraus gezielt per Mausklick den Schreibschutz einer Datei entfernen könnte.
Gestern hat's mich dann dermaßen genervt, daß ich etwas getan habe, was ich schon vor Jahren hätte tun sollen: Ein Toolbar-Add-In zu schreiben das genau dieses tut. Das Ergebnis, das mich nicht mal eine Stunde gekostet hat, findet sich hier. Einfach rekursiv auspacken und builden oder das im zip-File vorhandene Release-Binary mkdocwrt.dll irgendwo hinkopieren wo man es nicht aus Versehen wieder löscht, am Besten ins Installationsverzeichnis von VS6. Dann in msdev den Menüpunkt "Tools"-"Configure" anwählen, woraufhin sich ein Property Sheet öffnet, in dem man den Tab "Add-ins and Macro files" anwählt:
Nun betätigt man den "Browse..."-Button, wählt als Extension "DLL" und browst da hin, wo mkdocwrt.dll zuvor abgespeichert wurde, wählt die Datei an und betätigt OK. Der Dialog schaut dann wie folgt aus und man sieht, dass das neue Add-in "mkdocwrt Developer Studio-Add-In" bereits angewählt ist:
Betätigt man nun OK, wird man mit einer sagenhaften neuen Toolbar mit einem kleinen Bömbchen belohnt:
Und wenn man nun die Bombe zündet, wird vom gerade aktiven Dokument ein eventuell vorhandener Schreibschutz entfernt.