Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Robocopy über vb.net tut nicht, was es soll.

Frage Entwicklung Visual Studio

Mitglied: emeriks

emeriks (Level 4) - Jetzt verbinden

19.11.2013, aktualisiert 17:00 Uhr, 3110 Aufrufe, 9 Kommentare

Hi,
habe ein Verständnisproblem beim Starten von Robocopy.exe aus einer VB.Net-Anwendung heraus.

1. Aufgabe ist, einen Ordner zu kopieren, für welchen der aktuelle Benutzer keine Rechte hat.
2. Der Benutzer ist auf dem System, wo die Anwendung läuft, und auf dem Server, wo die Daten liegen, Administrator mit Backup Operator Rechten
3. Ich habe eine Batch mit dem Robocopy-Kommando, um diesen Ordner incl. Sicherheitseinstellungen zu kopieren.
4. Starte ich diese Batch manuell in einer Cmd-Shell, dann wird der Ordner tadellos kopiert, incl. Sicherheitseinstellungen. Der Benutzer kann anschließend nicht auf den Kopie-Ordner zugreifen, wie es sein soll.
5. Starte ich dieselbe Batch aus meinem VB.net Programm heraus, dann meckert Robocopy, dass der Quell-Ordner nicht da wäre.
6. kapiere ich nicht! *frust*

Die Batch sieht so aus:

01.
robocopy.exe "\\Server\Freigabe\QuellOrdner" "C:\Temp\Zielordner" /MIR /B /LEV:1 /COPY:DS /R:0 /W:0 /XF * /LOG:"C:\Temp\robocopy.log"
Im Logfile steht dann:

01.
------------------------------------------------------------------------------- 
02.
   ROBOCOPY     ::     Robustes Dateikopieren fr Windows                               
03.
------------------------------------------------------------------------------- 
04.
 
05.
  Gestartet: Tue Nov 19 16:24:32 2013 
06.
 
07.
   Quelle : \\Server\Freigabe\QuellOrdner\ 
08.
     Ziel : C:\Temp\Zielordner\ 
09.
 
10.
    Dateien : *.* 
11.
	     
12.
Ausfhrbare Dateien : * 
13.
	     
14.
  Optionen: *.* /S /E /COPY:DTS /PURGE /MIR /B /LEV:1 /R:0 /W:0  
15.
 
16.
------------------------------------------------------------------------------ 
17.
 
18.
2013/11/19 16:24:32 FEHLER 2 (0x00000002) Zugriff auf Quellverzeichnis \\Server\Freigabe\QuellOrdner\ 
19.
Das System kann die angegebene Datei nicht finden.

Kann mir da jemand bitte helfen?

E.

Mitglied: colinardo
19.11.2013, aktualisiert um 17:32 Uhr
Hallo emeriks,
das sieht mir nach fehlenden Rechten auf der Freigabe aus, aber probier erst mal Robocopy direkt über Process.Start
auszuführen, anstatt über den Umweg der Batch:
01.
Process.Start("robocopy.exe", "\\Server\Freigabe\QuellOrdner\ C:\Temp\Zielordner\ /MIR /B /LEV:1 /COPY:DS /R:0 /W:0 /XF * /LOG:C:\Temp\robocopy.log")
Grüße Uwe
Bitte warten ..
Mitglied: emeriks
19.11.2013 um 17:34 Uhr
Hallo Uwe,
nee, Rechte kann doch nicht sein, wenn die Batch -manuell gestartet- arbeitet.
Ursprünglich habe ich die die Exe auch direkt gestartet, genau so, wie Dein Beispiel. Die Batch ist dann schon ein Verzweiflungsversuch von mir. Darüber konnte ich dann aber wenigstens Schreibfehler ausschließen, weil ich ja die funktionierende Batch 1:1 aus VB starte.
Der Start funktioniert auch. Robocopy schreibt jedesmal ein aktuelles Log.

E.
Bitte warten ..
Mitglied: colinardo
19.11.2013 um 17:37 Uhr
nee, Rechte kann doch nicht sein
kann doch, starte mal die EXE in der CMD-Shell und nicht via Doppelklick ...
du kannst Process.Start() auch Credentials mitgeben (http://msdn.microsoft.com/de-de/library/ed04yy3t%28v=vs.110%29.aspx)
Bitte warten ..
Mitglied: emeriks
19.11.2013 um 17:54 Uhr
Sorry, aber das schnalle ich jetzt nicht.

Meine Exe und die von mir gestartete cmd.exe bzw. die dann über die Batch gestartete robocopy.exe laufen doch alle in derselben Sitzung, mit dem selben Sitzungstoken. Also haben doch alle drei Prozesse dieselben Rechte?

Vielleicht noch ein Hinweis:
Das ganze soll unter Win2008 R2 laufen. Ich habe UAC ausgeschaltet. Wenn ich die cmd.exe manuell starte, dann steht in der Fensterleiste "Administrator: ...". Wenn ich die cmd.exe über VB starte, dann steht das auch "Administrator:....".

Wenn ich robocopy.exe aus VB starte und auf einen Ordner ansetze, wo ich Vollzugriff habe, dann meckert robocopy auch nicht, dass der Ordner nicht da wäre.
Ich vermute, dass muss etwas mit dem "/B" Schalter von Robocopy zu tun haben. Als wenn in dem aus VB heraus gestarteten Robocopy-Prozess das Backup Operator Privileg nicht aufrufbar wäre.

E.
Bitte warten ..
Mitglied: colinardo
19.11.2013 um 17:58 Uhr
Zitat von emeriks:

Sorry, aber das schnalle ich jetzt nicht.

Meine Exe und die von mir gestartete cmd.exe bzw. die dann über die Batch gestartete robocopy.exe laufen doch alle in derselben Sitzung, mit dem selben Sitzungstoken. Also haben doch alle drei Prozesse dieselben Rechte?
Sicher, aber wenn du das nicht schreibst kann ich es nicht wissen , du könntest ja auch als anderer User angemeldet sein und die cmd mit dem Backup-User gestartet haben...
War halt ein Missverständnis...
Muss mal testen.
Bitte warten ..
Mitglied: colinardo
19.11.2013, aktualisiert 20.11.2013
hmmm kann das geschilderte Verhalten auf einem 2008R2 nicht nachvollziehen. Du sagst das es mit anderen Freigaben auf dem Server funktioniert ? und nur mit dieser Freigabe nicht ?
Bitte warten ..
Mitglied: emeriks
20.11.2013 um 08:57 Uhr
Nein, in der selben Freigabe ein anderer Ordner, wo ich Vollzugriff habe. Da geht es.
Und ich kann es für alle Ordner und Dateien in allen Freigaben, auf welche ich keinen Zugriff habe und auch nicht der Besitzer bin, reproduzieren.
Bitte warten ..
Mitglied: emeriks
20.11.2013 um 14:17 Uhr
Habe das jetzt noch eingrenzen können:
Dieses Problem tritt nur dann auf, wenn ich den Prozess-Start in einem neuen Thread ausführe.

Also:
- Anwendung starten und sofort die Routine ausführen -> geht
- Routine über Button auslösen --> geht
- Routine über einen Timer und von dort als neuen Thread gestartet --> geht nicht! Uuuups... Und was nu?
Bitte warten ..
Mitglied: colinardo
20.11.2013 um 14:23 Uhr
Zitat von emeriks:
- Routine über einen Timer und von dort als neuen Thread gestartet --> geht nicht! Uuuups... Und was nu?
Im Thread die CurrentPrincipal-Eigenschaft festlegen oder http://stackoverflow.com/questions/2608194/how-do-i-start-a-thread-in-a ...

Grüße Uwe
Bitte warten ..
Ähnliche Inhalte
Microsoft Office
IF-Funktion, die nichts tut bei false
Frage von StoffnMicrosoft Office12 Kommentare

Hallo! Ich habe eine recht lange IF-Funktion, die auch soweit funktioniert. Ich arbeite mit google sheets. Sie soll mir ...

Visual Studio
Variablen in VB.NET
gelöst Frage von MarcoBornVisual Studio4 Kommentare

Hallo Forum, in VB.NET gibt es ja die Möglichkeit, Variablen global oder lokal zu definieren. Zusätzlich können Variablen auch ...

Windows Server
Abfrage per command auf ForwardedEvents tut nicht
Frage von GertWindows Server

Möchte auf einem zentralen Windows-Log-Server auf das ForwardedEvents-Log zugreifen per GUI kein Problem Wie muss ich das in einem ...

Router & Routing
Problem: Fritzbox tut in Sachen FTP was sie will!
gelöst Frage von ububehRouter & Routing10 Kommentare

Hallo Gemeinde, ich bin am Ende. Seit Tagen funktioniert mein NAS auf FTP:// nicht mehr - stattdessen kommt die ...

Neue Wissensbeiträge
Internet

Was nützt HTTPS, wenn es auch von Phishing Web-Seiten genutzt wird

Information von Penny.Cilin vor 2 TagenInternet17 Kommentare

HTTPS richtig einschätzen Ob man eine Webseite via HTTPS aufruft, zeigt ein Schloss neben der Adresse im Webbrowser an. ...

Webbrowser

Bugfix für Firefox Quantum released - Installation erfolgt teilweise nicht automatisch!

Erfahrungsbericht von Volchy vor 3 TagenWebbrowser7 Kommentare

Hallo zusammen, gem. dem Artike von heise online wurde mit VersionFirefox 57.0.1 sicherheitsrelevante Bugs behoben. Entgegen der aktuellen Veröffentlichung ...

Sicherheit

Teamviewer Sessions können gekapert werden - Update tw. verfügbar

Information von sabines vor 3 TagenSicherheit6 Kommentare

In bestimmten Konstellationen können Teamviewer Sessions gekapert werden, wahrscheinlich aber ein recht unwahrscheinliches Szenario. Da der Teamviewer gerne für ...

Digitiales Fernsehen

Apple TV: Amazon Prime App ist verfügbar

Information von Frank vor 4 TagenDigitiales Fernsehen4 Kommentare

Die Amazon Prime Video App kann ab sofort auf einem Apple TV ab der 3 Generation installiert werden. Einfach ...

Heiß diskutierte Inhalte
Vmware
Installation Windows 10 VMware
Frage von Ghost108Vmware17 Kommentare

Hallo zusammen, versuche gerade mit Hilfe des vshpere clients eine virtuelle Windows 10 maschine aufzusetzen. 1. virtuelle Maschine erstellt ...

Exchange Server
SBS 2011 E-Mails können gesendet werden, aber nicht von extern empfangen
Frage von andreas1234Exchange Server14 Kommentare

Hallo Community, ich habe das Problem, dass seit knapp zwei Wochen die E-Mails von meinem SBS 2011 einwandfrei gesendet ...

Voice over IP
Telefonstörung - Ortsrufnummern kein Verbindungsaufbau
Frage von Windows10GegnerVoice over IP10 Kommentare

Hallo, sowohl bei uns als auch beim Opa ist es über VoIP nicht möglich Ortsrufnummern anzurufen. Es kommt nach ...

Windows Server
Server 2012 über Eingabeaufforderung devmgmt.msc geht nicht
gelöst Frage von achim222Windows Server9 Kommentare

Hallo, ich habe hier einen Server 2012 der im Reparaturmodus startet. Es liegt an einem falschen VirtIO Treiber für ...