2016-04-03 6 views
1

Ich möchte DLL-Projekte zur Laufzeit dynamisch laden und entladen können. Damit dies funktioniert, muss ich sicherstellen, dass jedes Mal, wenn ich mein Projekt in Visual Studio neu anlege, die generierte .pbd-Datei einen pseudozufällig erzeugten Namen als (zufällige Dateipfad gültige Zeichenfolge) .pbd hat.Wie generieren Sie in Visual Studio eine PDB-Datei mit einem zufällig ausgegebenen Namen?

Das liegt daran, dass der Debugger mich zwingt, das Debugging vor dem Neuaufbau abzubrechen.

Ich versuchte zunächst ein benutzerdefiniertes Pre-Build-Werkzeug zu schaffen, die eine .bat-Datei ausführen, das eine Systemumgebungsvariable wie folgt erstellt:

set TIMESTAMP=%DATE:/=-%@%TIME::=-% 
set TIMESTAMP=%TIMESTAMP: =% 
setx buildrandomvar %TIMESTAMP% 

Und das hat gut funktioniert, ich die Registrierung überprüft. Aber egal, was ich getan habe, ich konnte einfach nicht "buildrandomvar" als Teil des .pdb-Dateinamens referenzieren. Das Ergebnis war nur ein leeres ".pbd".

Mein Programm Database File Name Einstellung ist: $ (OutDir) $ (Targetname) $ (buildrandomvar) PDB

ich wirklich jede Hilfe überhaupt mit diesem Thema zu schätzen wissen würde, weil ich einfach nicht das bekommen Arbeit.

+0

https://msdn.microsoft.com/en-us/library/dd633440.aspx#BKMK_Static –

Antwort

4

Ich fand die Antwort und ich werde es hier für den Fall, dass jemand es jemals braucht.

in Visual Studio, klicken Sie rechts Ihr Projekt, gehen Sie auf Eigenschaften -> Linker -> Debugging -> Programm-Datenbank-Datei generieren und

"$(OutDir)$(TargetName)-$([System.DateTime]::Now.ToString("HH_mm_ss_fff")).pdb" 

Dies mit einem Zeitstempel im Dateinamen generiert Ihre pdb eingeben sollte die ist technisch pseudozufällig.

Verwandte Themen