Zum Inhalt springen

Auf einen Remoterechner zugreifen und netzlaufwerk verbinden.


cH4PpY

Empfohlene Beiträge

Hi Leute also ich muss folgendes lösen.

Per Skript auf einen remoterechner zugreifen und dort dann ein netzlaufwerk erstellen.

bin da noch ziemlich neu und habe mal verschiedenes probiert bin allerdings noch zu keiner lösung gekommen.

Ich habe 3 Stellen im Code fett dargestellt das sind die wichtigen.

Und zwar bei dem Fettgedrucktem

NR1: hier wird die verbindung zur WMI des Remoterechners hergestellt.

NR2: hier SOLLTE dann auf dem Remoterechner ein Netzlaufwerk verbunden

werden. Leider verbindet er das Laufwerk aber auf meinem lokalen

Rechner ^^

NR3: Hier wird dann die Datei ausgeführt die ich normalerweise dann über das

gemappte laufwerk aufgerufen wird.

Nr3 führt er korrekt remote aus aber Nr2 jedesmal auf meinem lokalen rechner weiß einer wieso?

danke schonmal :D

'* Msgbox welcome <-- Aufteilung in 2 Zeilen

welcome = "Willkommen bei blablabla" & vbNewLine

welcome = welcome & "                      (Beta 0.1)"

MsgBox welcome,,"remote.Installer (Beta 0.1)"


'* Eingabe der IP des Zielrechners & Wiederholung bei "Leereingabe"

ziel = InputBox("Bitte geben Sie die IP des Zielrechners ein.")

	If IsEmpty(ziel) Then

	Do

		MsgBox "Es muss ein Zielcomputer angegeben werden.", vbCritical

		ziel = InputBox("Bitte geben Sie die IP des Zielrechners ein.")

	Loop Until ziel <> ""

	End If


Namespace = "root\CIMV2"


'* Eingabe des Usernamen & Wiederholung bei "Leereingabe"

UserName = InputBox("Bitte geben Sie den Benutzernamen ein.")

	If UserName = "" Then

	Do

		MsgBox "Es muss ein Benutzername angegeben werden.", vbCritical

		UserName = InputBox("Bitte geben Sie den Benutzernamen ein.")

	Loop Until UserName <> ""

	End If


'* Eingabe des Passworts & Wiederholung bei "Leereingabe"

Password = InputBox("Bitte geben Sie das Passwort ein.")

	If Password = "" Then

	Do

		MsgBox "Es muss ein Passwort angegeben werden.", vbCritical

		Password = InputBox("Bitte geben Sie das Passwort ein.")

	Loop Until Password <> ""

	End If


'* PktPrivacy <-- zusätzliche Datenverschlüsselung

[B]Const wbemAuthenticationLevelPktPrivacy = 6	

Set objLocator = CreateObject("WbemScripting.SWbemLocator")

objLocator.Security_.AuthenticationLevel = wbemAuthenticationLevelPktPrivacy

Set ObjWMI = objLocator.ConnectServer(ziel, Namespace, UserName, Password)

[/B]

'* MsgBox zur Prüfung der vorangegangenen Eingaben

ziel = "Zielrechner: " & ziel & vbNewLine

name = ziel & "Username: " & UserName & vbNewLine

pw =  name & "Passwort: " & Password & vbNewLine

leer = pw & "" & vbNewLine

abfrage = leer & "Sind diese Angaben korrekt?"


'* Prüfung der vorangegangenen Eingaben

entscheidung = MsgBox (abfrage, vbYesNo + vbQuestion)

	If entscheidung = vbNo Then

		MsgBox "Bitte Programm neu starten und Eingaben korrigieren."

		WScript.Quit

	ElseIf entscheidung = vbYes Then

		MsgBox "Die Installation wird nun durchgeführt."

	End If


[B]'* Netzlaufwerke verbinden

Set objnet = CreateObject("WScript.Network")

objnet.MapNetworkDrive "Z:","\\10.10.3.230\c$",True,"demo\user","pw"[/B]



[B]'* Führt die Datei aus

Set instanz = ObjWMI.Get("Win32_Process")

WScript.Echo instanz.GetObjectText_

* rv = instanz.Create("Z:\xxx.bat")

WScript.Echo "Rückgabewert: " & rv

ObjWMI

Link zu diesem Kommentar
Auf anderen Seiten teilen

objnet.MapNetworkDrive "Z:","\\10.10.3.230\c$",True,"demo\user","pw"

du sagst hier er soll lokal z erstellen, er hat ja sonst nichts wie soll er da auf nen anderen Rechern was erstellen, oder seh ich was falsch?

vielleicht gibt es einen Befehl der auf einem anderen Rechner das laufwerk erstellt oder du versucht mal irgendwie sowas:

objnet.MapNetworkDrive "\\"+ziel+"\Z:","\\10.10.3.230\c$",True,"demo\user","pw"

(is nur ne idee, vielleicht ein bisserl anders...)

Link zu diesem Kommentar
Auf anderen Seiten teilen

probier das ganze vielleicht mal so - ist allerdings ohne SWbemLocator sprich ohne verschlüsselung/authentifizierung. hast du zugriff auf das eventlog des remoterechners?

Set objWMIService = GetObject("winmgmts:" _

& "{impersonationLevel=impersonate}!\\" & ziel &

"\root\cimv2")

Set WshNetwork = WScript.CreateObject("WScript.Network")

WshNetwork.MapNetworkDrive "z:", "\\10.10.3.230\c$", blabla

@maulwurf: MapNetworkDrive lässt keine unc-pfade als ersten parameter zu, dass muss ein laufwerksbuchstabe sein - aber schön wärs schon...

s'Amstel

Link zu diesem Kommentar
Auf anderen Seiten teilen

guten morgen zusammen :D

also erstmal vielen dank für die Hilfe habe es nun versucht so zu lösen wie Amstelchen genannt hat:

Set objWMIService = GetObject("winmgmts:\\" & "10.10.3.230" & "\root\cimv2")
<-- du meintest ja das damit dann die verbindung aufgebaut wird. geht aber nicht zugriff verweigert da er dann ja meinen momentan account nimmt (soweit ich weiß) und der auf dem zielrechner nicht gültig ist. Habe es dann einfach mal um den user und pw ergänzt allerdings geht es so auch nicht.
Set objWMIService = GetObject("winmgmts:\\" & "10.10.3.230" & "\root\cimv2" & "demo\user" & "pw")

Mein Arbeitskollege hat gesagt ich soll mal schaun ob es bei

ObjWMI.Get etwas gibt was ich nutzen kann bisher habe ich jedoch noch nichts gefunden.

@Maulwurf_der_Schlaue ich habe mal was angehangen da bekommst du ne Übersicht über die ganzen WMI Klassen vielleicht hilft dir das ja bissel :D

scriptomatic.zip

Link zu diesem Kommentar
Auf anderen Seiten teilen

dank dir...

zu deinem Problem:

es gibt doch bestimmt einen Admin-Account auf den Remoterechner? und die haben bestimmt den selben Username und Password oder?

Wenn ja, dann meld dich doch als admin an und führ das skript aus, dann nimmt er deinen Account und findet ihm auf dem Remotesystem, dann sollte es gehen.... oder nicht?

Link zu diesem Kommentar
Auf anderen Seiten teilen

dank dir...

zu deinem Problem:

es gibt doch bestimmt einen Admin-Account auf den Remoterechner? und die haben bestimmt den selben Username und Password oder?

Wenn ja, dann meld dich doch als admin an und führ das skript aus, dann nimmt er deinen Account und findet ihm auf dem Remotesystem, dann sollte es gehen.... oder nicht?

so habe ich es eben schon versucht klappt leider nicht also die verbindung steht aber das netzlaufwerk wird nicht auf dem remoterechner angelegt sondern immernoch auf dem lokalen rechner :-(

naja ich muss mal weitersuchen wird schon irgendwie :P

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...