,,Textformatierungsbefehle" für strings deaktivieren

Apfelsinenkern

Aktives Mitglied
Ich möchte den Benutzer per Programm wechseln. Dafür hab ich für cmd diesen Befehl gefunden:

"%windir%\system32\rundll32.exe user32.dll, LockWorkStation"

Den nimmt Java türlich ned an, weil es die "\" für Befehle für HTML hält. Wie kann ich das abschalten für diesen String?
 
Zuletzt bearbeitet:
Was ist denn eine HTML-Befehlerkennung?

Backslashes werden in Java zum Escapen von bestimmten Zeichen verwendet.

Probier es mit
Code:
%windir%\\system32\\rundll32.exe user32.dll, LockWorkStation
oder
Code:
%windir%/system32/rundll32.exe user32.dll, LockWorkStation
 
nein, das ging nicht, da findet es nix...

War blöd formuliert,sorry:

eclipse bezeichnet es als invalid escape sequence, und gibt mir Korrekturvorschläge wie /n und so weiter
(/n ist ja neue Zeile, daher dachte ich, weil ich mal gelsen hab, das java html verwendet, dass das zu den html befehlen dazugehört)

Aber gibt es sonst keine andere Möglichkeit den Befehl in Java laufen zu lassen?
 
haben schon verstanden, was du meinst aber das hat trotzdem nichts mit HTML zu tun. Z.b. wird der Backslash zum escapen eines Qualifiers (") verwendet. Deshalb muss man um einen Backslash darzustellen diesen selbst mit einem Backslash escapen.

Was machst du da eigentlich? Ist das ein Batch-Call aus deiner Javaanwendung heraus? edit: wobei das eigentlich schon hervor geht. Dann zeig doch mal den Aufruf..
 
Zuletzt bearbeitet:
Klar:

Eigentlich ganz simpel...

Java:
	public void changeUser()
	{
		Runtime rt = Runtime.getRuntime();
		try {
			Process change = rt.exec("%windir%\system32\rundll32.exe user32.dll, LockWorkStation");
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
 
Probiers mal so:

Java:
Process change = rt.exec("cmd /c %windir%\\system32\\rundll32.exe user32.dll, LockWorkStation");
 

Neue Themen


Zurück
Oben