Isso deve funcionar no PowerShell:
$net4 = gci "C:\Windows\Microsoft.NET\Framework\v4.0.30319" | Where-Object {$_.Extension -eq ".dll"}
$net4 | ForEach-Object {
$_.name | Out-File "C:\Users\YourUser\AppData\Roaming\Microsoft\UProof\CUSTOM.DIC" -Append
}
Você pode fazer um loop em todas as estruturas para ser seguro ou fazer isso uma vez para cada diretório .NET.
Além disso, se você quiser o nome do arquivo sem a extensão (.dll), use $_.Basename
Update: Ran o roteiro e funcionou para mim. Eu adicionei as bibliotecas dessa maneira, mscorlib por exemplo.
Também consigo obter métodos:
$net4 = gci "C:\Windows\Microsoft.NET\assembly\GAC_MSIL\" -Recurse -Force | Where-Object {$_.Extension -eq ".dll"}
$Methods
$net4 | ForEach-Object {
$Methods += $_ | Get-Member -Force -View All | Select -ExpandProperty Name
}
$Methods | Out-File "C:\Users\UserName\AppData\Roaming\Microsoft\UProof\CUSTOM.DIC" -Append
E isso me pega (entre muitos, muito mais):
OpenWrite
Refresh
Replace
SetAccessControl
set_Attributes
set_CreationTime
set_CreationTimeUtc
set_IsReadOnly
set_LastAccessTime
set_LastAccessTimeUtc
set_LastWriteTime
set_LastWriteTimeUtc
ToString
PSChildName
PSDrive
PSIsContainer
PSParentPath
PSPath
PSProvider
Attributes
Agora o problema é que existem muitas duplicatas, mas daqui deve ser mais simples.
Você também pode usar os diretórios C:\Windows\Microsoft.NET\Framework
em vez do GAC, se desejar.