मैं ProcessBuilder का उपयोग कर निम्न आदेश का निर्माण करने की जरूरत है कमांड लाइन करने के लिए अतिरिक्त उद्धरण कहते हैंProcessBuilder
ArrayList<String> test = new ArrayList<String>();
test.add("\"C:\\Program Files\\USBDeview\\USBDeview.exe\"");
test.add("/enable \"My USB Device\"");
ProcessBuilder processBuilder = new ProcessBuilder(test);
processBuilder.start().waitFor();
हालांकि, इस प्रणाली के लिए निम्न गुजरता (Sysinternals प्रक्रिया मॉनिटर का उपयोग कर सत्यापित)
"C:\Program Files\USBDeview\USBDeview.exe" "/enable "My USB Device""
से पहले उद्धरण नोट करेंऔर Device
के बाद दो उद्धरण। मुझे उन अतिरिक्त उद्धरणों से छुटकारा पाना होगा क्योंकि वे आमंत्रण विफल कर देते हैं। क्या किसी को भी यह करना आता है?
अच्छा अवलोकन! क्या कोई दस्तावेज है जो वर्णन करता है कि ProcessBuilder डबल कोट्स के साथ हर तर्क उद्धृत करता है? – okwap