Moin zusammen,
weiß nicht ob die Tools hier schon einmal vorgestellt worden sind, aber wenn nicht, möchte ich sie keinem vorenthalten.
Es handelt sich hier um API Sample-Tools von Microsoft für so das ein oder andere Anliegen. Finde z.B. die CleanStaleComputers sehr interessant.
Download:
(Du musst Dich Einloggen oder Registrieren um Multimediadateien oder Links zu sehen).Readme:
(Du musst Dich Einloggen oder Registrieren um Multimediadateien oder Links zu sehen).
Dazu hätte ich dann gleich auch nochmal eine Frage, kennt sich hier einer mit APIs etc aus?
Wie oben geschrieben finde ich das CleanStaleComputers sehr interessant, müsste aber noch ein wenig was am Tool ändern, damit es für uns besser ist.
Soweit so gut, die Projektdatei liegt ja auch bei.
Nachdem ich Datei importiert und sie angepasst wurde (da von einer vorherigen Version geschrieben) bekomme ich so ein Paar Wanungen und einen Error angezeigt die ich nach einigem Hin und her auch gelöscht habe.
Allerdings funktioniert eine Sache einfach nicht:
In der Kompilierten Version, wird eine Verbindung zum WSUS Server mit dem Befehl: "server = AdminProxy.GetUpdateServer" hergestellt bzw. frage er den WSUS Server ab.
Das klappt nun nicht mehr. Wenn ich das so auf dem Server ausführe bekomme ich folgende Fehlermeldung:
An error occured while trying to clean up stale computers. Details: System.Net.WebException: The request failed with HTTP status 403: Forbidden.
at Microsoft.UpdateServices.Administration.AdminProxy.CreateUpdateServer(Object[] args)
at Microsoft.UpdateServices.Administration.AdminProxy.GetUpdateServer()
at CleanStaleComputers.Module1.CleanUp()
Ich muss dem Aufbau alle Daten mitgeben, erst dann funktioniert der Aufbau, also so:
server = AdminProxy.GetUpdateServer("FQDN", True, 8531)
Da ich das Script aber nicht nur auf einem Server laufen lassen und auch nicht für jeden Server eine .exe Datei haben möchte, frage ich mich, was ich nun falsch mache.
So sieht die Stelle im Code aus:
Dim StaleGroup As IComputerTargetGroup = Nothing
Dim StaleComputers As New ComputerTargetCollection
Dim LastValidContactDate As DateTime
Dim AdminProxy As New AdminProxy
Dim server As IUpdateServer
server = AdminProxy.GetUpdateServer()