bin/smo/smo-deps.txt

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
cd C:\github\dbatools\bin\smo
$phase1 = @()
$leftover = @()
dir *.dll | %{

 $file = $_
 try
 {
 Add-Type -Path $_.FullName -ErrorAction Stop
 $phase1 += $_.FullName
 }
 catch { $leftover += $file.FullName }
}

$dep = @()
dir *.dll | %{
    try { $hello = $_.FullName; Add-Type -Path $_.FullName -ErrorAction Stop }
    catch { write-warning $hello; $_.Exception.LoaderExceptions.FileName | %{ $dep += $_ }}
}
$dep | Select-Object -unique



cd C:\github\dbatools\bin\smo
$dir = "C:\Program Files (x86)\Microsoft SQL Server Management Studio 18\Common7\IDE"
dir *.dll | %{
 cp "$dir\$($_.Name)" . -EA ignore
}

$names

cd C:\github\dbatools\bin\smo
$newnames = @()
foreach ($name in $names) {
    if ((Get-ChildItem "$($name).dll" -EA Ignore)) {
        $newnames += $name
    }
}
$newnames -join "',`r`n'" | clip

$newernames = @()
$filenames = dir *.dll
foreach ($name in $filenames.basename) {
    if ($name -notin $newnames) {
        $newernames += $name
    }
}
$newernames -join "',`r`n'" | clip



$names = @(
    'Microsoft.SqlServer.Smo',
    'Microsoft.SqlServer.SmoExtended',
    'Microsoft.SqlServer.ConnectionInfo',
    'Microsoft.SqlServer.BatchParser',
    'Microsoft.SqlServer.BatchParserClient',
    'Microsoft.SqlServer.Management.XEvent',
    'Microsoft.SqlServer.Management.XEventDbScoped',
    'Microsoft.SqlServer.Management.Sdk.Sfc',
    'Microsoft.SqlServer.SqlWmiManagement',
    'Microsoft.SqlServer.Management.RegisteredServers',
    'Microsoft.SqlServer.Management.Collector',
    'Microsoft.SqlServer.ConnectionInfoExtended',
    'Microsoft.SqlServer.Management.IntegrationServices',
    'Microsoft.SqlServer.SqlClrProvider',
    'Microsoft.SqlServer.SqlTDiagm',
    'Microsoft.SqlServer.SString',
    'Microsoft.SqlServer.Dac',
    'Microsoft.Data.Tools.Sql.BatchParser',
    'Microsoft.Data.Tools.Utilities',
    'Microsoft.SqlServer.Dmf',
    'Microsoft.SqlServer.Dmf.Common',
    'Microsoft.SqlServer.Types',
    'Microsoft.SqlServer.XEvent.Linq',
    'Microsoft.SqlServer.Replication',
    'Microsoft.SqlServer.Rmo'
)


foreach ($name in $names) {
    try {
        $null = Add-Type -Path (Resolve-Path -Path "C:\github\dbatools\bin\smo\$name.dll") -ErrorAction Stop
    } catch {
        write-warning $name
    }
}