Chào mừng đến với Diễn đàn lập trình - Cộng đồng lập trình.
Kết quả 1 đến 5 của 5
  1. #1
    Ngày tham gia
    Sep 2015
    Bài viết
    0

    Làm thế nào để chạy Windows commands (CMD) trong Java và trả về kết quả là các chuỗi hiển thị trên đó.

    Như title ạ. em dùng đoạn lệnh:
    Mã:
    Process p=Runtime.getRuntime().exec("cmd /c dir");
    đoạn lệnh này thì chạy được lệnh dir trong CMD, nhưng nếu em thay lệnh dir này bằng một số lệnh khác như tập các lệnh sau:
    Mã:
    D:
    cd D:\...(dẫn tới thư mục chứa file aapt.exe)
    aapt d badging filename.apk
    Tập lệnh này trên CMD là thực hiện được, nhưng ko rõ lỗi tại đâu mà em chạy bằng java thì không hoạt động.
    Ai biết về vấn đề này có thể giải thích dùm em được không ạ? [IMG]images/smilies/21.gif[/IMG]

  2. #2
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    cd đâu có phải là output chứ nó chỉ là change directory thôi mà. Bạn nên nhớ là change directory là khái niệm trong mỗi hệ điều hành, Java không quản việc này được.

    Bạn đưa source code lên mọi người sẽ giúp bạn giải quyết vấn đề này!

  3. #3
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Đơn giản. Windows không tìm thấy chương trình "cd" lưu ở đâu cả.
    Cái
    Mã:
    Process p=Runtime.getRuntime().exec("blah blah");
    dùng để chạy 1 lệnh bằng bằng hệ thống (ở đây là hệ điều hành Windows). Theo nguyên tắc của Windows thì phần đầu tiên của câu lệnh bạn phải chỉ ra chương trình cần chạy là gì (bao gồm cả đường dẫn đến thư mục chứa chương trình đó, trừ khi thư mục đó đã được lưu vào trong biến môi trường PATH của hệ thống), tiếp đó mới đến các tham số.

    cmd là 1 chương trình trong thư mục System32, thư mục này đã định nghĩa trong biến PATH nên bạn có thể bỏ qua phần đường dẫn. Còn cd thì không, windows không có chương trình như vậy (mặc định nhé, bạn mà viết ra chương trình như thế thì đừng bắt bẻ mình [IMG]images/smilies/biggrin.png[/IMG])

    Bây giờ có vẻ vấn đề của bạn là muốn chạy lệnh aapt (đóng gói android). Theo những thông tin bạn đưa ra mình dự đoán câu lệnh bạn cần viết là:

    Mã:
    Process p=Runtime.getRuntime().exec("D:\path\to\aapt d badging filename.apk");
    Hi vọng nó giúp được bạn [IMG]images/smilies/biggrin.png[/IMG]

    PS: Bạn mod game ah [IMG]images/smilies/biggrin.png[/IMG]

    Happy Coding!

  4. #4
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    cho hỏi chạy lệnh cmd từ C++ làm thế nào ạ ?

  5. #5
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Trích dẫn Gửi bởi einstein92
    cho hỏi chạy lệnh cmd từ C++ làm thế nào ạ ?
    1 - Bạn có thể tham khảo Bài tập mô phỏng lại các lệnh DOS, đây là box Java

    2 - Tôi đã thấy một demo trong Java đọc IP của hệ điều hành (trên Linux và cả Windows) : gọi command line ipconfig, ...
    lâu rồi không nhớ nó nằm đâu. Tôi sẽ lưu tâm tìm khi bạn chưa thấy

 

 

Quyền viết bài

  • Bạn Không thể gửi Chủ đề mới
  • Bạn Không thể Gửi trả lời
  • Bạn Không thể Gửi file đính kèm
  • Bạn Không thể Sửa bài viết của mình
  •