Ich muss nur nach Textstellen in meinem C#-Code suchen.
Ich habe bereits .NET Reflector und das File Disassembler Add-In, aber diese scheinen nur eine DLL zu dekompilieren.
Ich muss nur nach Textstellen in meinem C#-Code suchen.
Ich habe bereits .NET Reflector und das File Disassembler Add-In, aber diese scheinen nur eine DLL zu dekompilieren.
Eigentlich ist keine dieser Antworten richtig.
Ja, alle Tools können dekompilieren *.dll
Dateien in *.csproj
Datei aber keine von ihnen unterstützt CLI oder Stapelverarbeitung . Sie können sich die Zeit mit Installationen sparen.
Die bestmögliche Lösung ist bisher die Verwendung von dotPeek setzen alle *.dll
Dateien in einen Ordner und verwenden Ordner erforschen opción.
dotPeek analysiert den angegebenen Ordner und zeigt einen Baum von DLL
s innerhalb des Ordners. Sie können erzeugen csproj
manuell für jeden einzelnen dll
die geladen wird.
Wenn Sie auf diesen Beitrag gestoßen sind, weil Sie eine Antwort auf die Frage suchen, wie Sie eine bestimmte Anweisung in Ihrem oder einem Drittanbieter dll
s, insbesondere eine Verwendung von Reflection, können Sie dieses PowerShell-Skript zum Dekompilieren verwenden dll
s in IL und suchen Sie die Anweisung ( System.Reflection.Assembly::Load(string)
zum Nachdenken).
Es wird der Intermediate Language DisASseMbler (ILDASM) aus dem .NET Framework SDK-Kit verwendet. Passen Sie den Pfad entsprechend Ihrer Version des SDK an.
function Get-LibDump
{
Param(
# Specifies a path to one or more locations. Wildcards are permitted.
[Parameter(Mandatory=$true,
Position=0,
ParameterSetName="Basic",
ValueFromPipeline=$true,
ValueFromPipelineByPropertyName=$true,
HelpMessage="Path to one or more locations.")]
[ValidateNotNullOrEmpty()]
[SupportsWildcards()]
[ValidateScript({$_ | Test-Path})]
[System.IO.FileInfo]
$Path
)
process
{
$dumpFileFilePath = $Path.BaseName + '.il'
$outFile = "C:\LibDump\$dumpFileFilePath"
Start-Process -FilePath 'c:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.7.2 Tools\ildasm.exe' -ArgumentList "/UNICODE /OUT=`"$outFile`" `"$($Path.FullName)`"" -Wait
"Dump from:`n$(Resolve-Path -Path $Path.FullName -Relative)" | Out-File -FilePath $outFile -Encoding:unicode -Append
}
}
# Use
Get-ChildItem -Path $PathToLibFolder -Filter '*.dll' -File -Recurse | Get-LibDump
CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.