Từ 1 tới 4 trên tổng số 4 kết quả

Đề tài: Chèn mã DOS vào chương trình C qua lệnh system

  1. #1
    Ngày gia nhập
    09 2011
    Nơi ở
    Khi ta ở chỉ là nơi đất ở, khi ta đi đất bỗng hóa tâm hồn
    Bài viết
    55

    Mặc định Chèn mã DOS vào chương trình C qua lệnh system

    Chào các bạn. Mình mới tham gia diễn đàn. Hôm nay, có bài viết ra mắt mọi người. Một vấn đề khá hay là cmd của Windows. Chắc nhiều bạn biết để chạy các chương trình đơn giản, bạn có thể dùng cmd để chạy. Mình tìm hiểu qua mới biết, cmd cho chạy các câu lệnh DOS. Không biết nói vậy có vấn đề gì chưa phải không. Sau đây để bạn hiểu hơn vấn đề mình định bàn đến, mình xin trình bày những hiểu biết về DOS, nội dung chính là chèn các lệnh DOS vào chương trình C qua lệnh system.

    Các bạn vào Run rồi gõ cmd -> ENTER nha. Tiếp tục gõ help rùi ENTER. Thấy một dãy dài đúng không? Trông như thế này:
    C Code:
    1. For more information on a specific command, type HELP command-name
    2. ASSOC          Displays or modifies file extension associations.
    3. ATTRIB         Displays or changes file attributes.
    4. BREAK          Sets or clears extended CTRL+C checking.
    5. BCDEDIT        Sets properties in boot database to control boot loading.
    6. CACLS          Displays or modifies access control lists (ACLs) of files.
    7. CALL           Calls one batch program from another.
    8. CD             Displays the name of or changes the current directory.
    9. CHCP           Displays or sets the active code page number.
    10. CHDIR          Displays the name of or changes the current directory.
    11. CHKDSK         Checks a disk and displays a status report.
    12. CHKNTFS        Displays or modifies the checking of disk at boot time.
    13. CLS            Clears the screen.
    14. CMD            Starts a new instance of the Windows command interpreter.
    15. COLOR          Sets the default console foreground and background colors.
    16. COMP           Compares the contents of two files or sets of files.
    17. COMPACT        Displays or alters the compression of files on NTFS partitions.
    18. CONVERT        Converts FAT volumes to NTFS.  You cannot convert the
    19.                current drive.
    20. COPY           Copies one or more files to another location.
    21. DATE           Displays or sets the date.
    22. DEL            Deletes one or more files.
    23. DIR            Displays a list of files and subdirectories in a directory.
    24. DISKCOMP       Compares the contents of two floppy disks.
    25. DISKCOPY       Copies the contents of one floppy disk to another.
    26. DISKPART       Displays or configures Disk Partition properties.
    27. DOSKEY         Edits command lines, recalls Windows commands, and
    28.                creates macros.
    29. DRIVERQUERY    Displays current device driver status and properties.
    30. ECHO           Displays messages, or turns command echoing on or off.
    31. ENDLOCAL       Ends localization of environment changes in a batch file.
    32. ERASE          Deletes one or more files.
    33. EXIT           Quits the CMD.EXE program (command interpreter).
    34. FC             Compares two files or sets of files, and displays the
    35.                differences between them.
    36. FIND           Searches for a text string in a file or files.
    37. FINDSTR        Searches for strings in files.
    38. FOR            Runs a specified command for each file in a set of files.
    39. FORMAT         Formats a disk for use with Windows.
    40. FSUTIL         Displays or configures the file system properties.
    41. FTYPE          Displays or modifies file types used in file extension
    42.                associations.
    43. GOTO           Directs the Windows command interpreter to a labeled line in
    44.                a batch program.
    45. GPRESULT       Displays Group Policy information for machine or user.
    46. GRAFTABL       Enables Windows to display an extended character set in
    47.                graphics mode.
    48. HELP           Provides Help information for Windows commands.
    49. ICACLS         Display, modify, backup, or restore ACLs for files and
    50.                directories.
    51. IF             Performs conditional processing in batch programs.
    52. LABEL          Creates, changes, or deletes the volume label of a disk.
    53. MD             Creates a directory.
    54. MKDIR          Creates a directory.
    55. MKLINK         Creates Symbolic Links and Hard Links
    56. MODE           Configures a system device.
    57. MORE           Displays output one screen at a time.
    58. MOVE           Moves one or more files from one directory to another
    59.                directory.
    60. OPENFILES      Displays files opened by remote users for a file share.
    61. PATH           Displays or sets a search path for executable files.
    62. PAUSE          Suspends processing of a batch file and displays a message.
    63. POPD           Restores the previous value of the current directory saved by
    64.                PUSHD.
    65. PRINT          Prints a text file.
    66. PROMPT         Changes the Windows command prompt.
    67. PUSHD          Saves the current directory then changes it.
    68. RD             Removes a directory.
    69. RECOVER        Recovers readable information from a bad or defective disk.
    70. REM            Records comments (remarks) in batch files or CONFIG.SYS.
    71. REN            Renames a file or files.
    72. RENAME         Renames a file or files.
    73. REPLACE        Replaces files.
    74. RMDIR          Removes a directory.
    75. ROBOCOPY       Advanced utility to copy files and directory trees
    76. SET            Displays, sets, or removes Windows environment variables.
    77. SETLOCAL       Begins localization of environment changes in a batch file.
    78. SC             Displays or configures services (background processes).
    79. SCHTASKS       Schedules commands and programs to run on a computer.
    80. SHIFT          Shifts the position of replaceable parameters in batch files.
    81. SHUTDOWN       Allows proper local or remote shutdown of machine.
    82. SORT           Sorts input.
    83. START          Starts a separate window to run a specified program or command.
    84. SUBST          Associates a path with a drive letter.
    85. SYSTEMINFO     Displays machine specific properties and configuration.
    86. TASKLIST       Displays all currently running tasks including services.
    87. TASKKILL       Kill or stop a running process or application.
    88. TIME           Displays or sets the system time.
    89. TITLE          Sets the window title for a CMD.EXE session.
    90. TREE           Graphically displays the directory structure of a drive or
    91.                path.
    92. TYPE           Displays the contents of a text file.
    93. VER            Displays the Windows version.
    94. VERIFY         Tells Windows whether to verify that your files are written
    95.                correctly to a disk.
    96. VOL            Displays a disk volume label and serial number.
    97. XCOPY          Copies files and directory trees.
    98. WMIC           Displays WMI information inside interactive command shell.
    99.  
    100. For more information on tools see the command-line reference in the online help.
    bạn hãy để ý tất cả các câu lệnh trên xem bạn đã dùng chúng bao giờ chưa? Mình nghĩ là có!
    C Code:
    1. system("pause");
    Lệnh dừng màn hình! Mình hay dùng nó thay cho lệnh:
    C Code:
    1. getch();
    Còn 1 lệnh bạn cũng hay chèn nó vào chương trình, đó là lệnh xóa màn hình:
    C Code:
    1. system("cls");

    Đầu tiên muốn xem một cái lệnh của DOS có chức năng gì các bạn mở cmd rùi gõ tên cái lệnh đó, đi kèm theo sau là lệnh /? để xem. ví dụ xem chức năng của lệnh copy nó hoạt động thế nào, mình gõ:
    Code:
    Copy/?
    Kết quả như sau:
    C Code:
    1. Copies one or more files to another location.
    2.  
    3. COPY [/D] [/V] [/N] [/Y | /-Y] [/Z] [/L] [/A | /B ] source [/A | /B]
    4.      [+ source [/A | /B] [+ ...]] [destination [/A | /B]]
    5.  
    6.   source       Specifies the file or files to be copied.
    7.   /A           Indicates an ASCII text file.
    8.   /B           Indicates a binary file.
    9.   /D           Allow the destination file to be created decrypted
    10.   destination  Specifies the directory and/or filename for the new file(s).
    11.   /V           Verifies that new files are written correctly.
    12.   /N           Uses short filename, if available, when copying a file with a
    13.                non-8dot3 name.
    14.   /Y           Suppresses prompting to confirm you want to overwrite an
    15.                existing destination file.
    16.   /-Y          Causes prompting to confirm you want to overwrite an
    17.                existing destination file.
    18.   /Z           Copies networked files in restartable mode.
    19.   /L           If the source is a symbolic link, copy the link to the target
    20.                instead of the actual file the source link points to.
    21.  
    22. The switch /Y may be preset in the COPYCMD environment variable.
    23. This may be overridden with /-Y on the command line.  Default is
    24. to prompt on overwrites unless COPY command is being executed from
    25. within a batch script.
    26.  
    27. To append files, specify a single file for destination, but multiple files
    28. for source (using wildcards or file1+file2+file3 format).
    Khá hay đúng không? Mình sẽ giới thiệu 1 số chương trình vui sử dụng lệnh DOS:
    1. Khởi động google:
    C Code:
    1. #include<iostream.h>
    2. int main()
    3. {
    4.     system("Start http://www.google.com/");
    5.     return 0;
    6. }
    2. Chương trình tắt máy sau khoảng thời gian 25 phút = 1500s, sử dụng lệnh shutdown của DOS:
    C Code:
    1. #include<iostream.h>
    2. int main()
    3. {
    4.     system("shutdown -s -t 1500");
    5.     return 0;
    6. }
    Kết quả đối với hệ điều hành WIN 7:

    Mặc định máy sẽ tự tắt sau 25 phút. Để bỏ tự động tắt máy các bạn vào Run và gõ:
    C Code:
    1. shutdown –a
    Chương trình tạo “vô số” thư mục vào ổ C, sử dụng lệnh md của DOS:
    C Code:
    1. #include<iostream.h>
    2. int main()
    3. {
    4.     int i,j;
    5.     srand( time(NULL) );
    6.     char d,str[10],str1[20];
    7.     while(1)
    8.         {
    9.             i=0;
    10.             strcpy(str1,"md C:\\");                    
    11.             while(i<9)
    12.                 {
    13.                     d = rand();
    14.                     if(d<90&&d>65)
    15.                     {
    16.                     str[i]=d;
    17.                     i++;
    18.                     }
    19.                 }
    20.             str[10]='\0';
    21.         strcat(str1,str);
    22.         printf("%s\n",str1);
    23.         system(str1);
    24.         }
    25.     return 0;  
    26. }
    OK, vậy là xong rồi!
    Đã được chỉnh sửa lần cuối bởi nang : 28-10-2011 lúc 07:15 PM.
    Cái thuở còn đánh con bé hàng xóm chỉ vì nó không xách cặp hộ đi học. Cái thuở thèm làm người lớn, để bố mẹ khỏi đánh đòn đau mỗi khi mắc lỗi, để được “con nít” gọi mình là người lớn. Cái thuở con nít. Cái thuở ấy xa thật xa. Cô bé hàng xóm đi lấy chồng. Tôi không còn con nít. Và đôi lúc cái thằng người lớn như đã ước mơ một thời, giờ…Vâng…Rất lạ..Có khi nó muốn làm con nít!

  2. #2
    Ngày gia nhập
    08 2011
    Bài viết
    117

    Dùng cái này bị 1 số AV nó kêu :( với lại hình như trong 4rum có bài tương tự rồi :-?

  3. #3
    Ngày gia nhập
    09 2011
    Nơi ở
    Khi ta ở chỉ là nơi đất ở, khi ta đi đất bỗng hóa tâm hồn
    Bài viết
    55

    Trích dẫn Nguyên bản được gửi bởi CIMinuv Xem bài viết
    Dùng cái này bị 1 số AV nó kêu :( với lại hình như trong 4rum có bài tương tự rồi :-?
    Bài tương tự à? Bạn có thể cho mình xin link để tham khảo được không? mình có tìm qua nhưng không thấy, mới post lên cho mọi người xem mà
    Cái thuở còn đánh con bé hàng xóm chỉ vì nó không xách cặp hộ đi học. Cái thuở thèm làm người lớn, để bố mẹ khỏi đánh đòn đau mỗi khi mắc lỗi, để được “con nít” gọi mình là người lớn. Cái thuở con nít. Cái thuở ấy xa thật xa. Cô bé hàng xóm đi lấy chồng. Tôi không còn con nít. Và đôi lúc cái thằng người lớn như đã ước mơ một thời, giờ…Vâng…Rất lạ..Có khi nó muốn làm con nít!

  4. #4
    Ngày gia nhập
    07 2008
    Nơi ở
    /media/Anime
    Bài viết
    2,288

    Lệnh system được nói đến khá nhiều trên 4rum ở dạng nhưng bài trả lời. Hình như chưa thấy bài viết nào chuyên viết về nó. Thực tế thì khi lập trình hệ thống bằng c/c++, người ta ko dùng lệnh system nhiều, bởi lẽ nó chạy khá chậm. 1 lần gọi system tức là 1 lần chương trình sẽ chạy process "cmd.exe" và truyền tham số "-c" vào. Nếu những máy nào bị disable hoặc bị xóa mất cmd thì lệnh system sẽ ko chạy được.
    Càng yêu mèo thì mèo càng mập. Mèo càng mập ta lại càng yêu.

Các đề tài tương tự

  1. Lỗi Void System.Web.UI.ScriptResourceDefinition.set_LoadSuc cessExpression(System.String) sửa thế nào?
    Gửi bởi jockthree trong diễn đàn Thắc mắc lập trình ASP.NET
    Trả lời: 1
    Bài viết cuối: 13-12-2013, 06:43 PM
  2. An unhandled exception of type 'System.StackOverflowException' occurred in System.Windows.Forms.dll
    Gửi bởi i4uandu4i trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 1
    Bài viết cuối: 29-08-2012, 06:39 PM
  3. Database tìm ngày trong database lỗi: Cannot perform 'Like' operation on System.DateTime and System.String
    Gửi bởi vudat0987 trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 7
    Bài viết cuối: 26-06-2012, 02:16 PM
  4. Graphic Lỗi: An unhandled exception of type 'System.StackOverflowException' occurred in System.Drawing.dll, sửa thế nào vậy.
    Gửi bởi xuantruongT109 trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 3
    Bài viết cuối: 18-05-2012, 09:27 PM
  5. Method notfound: 'System.String[]' System.Windows.Forms.OpenFileDialog.get SafeFileName()
    Gửi bởi thuan199 trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 2
    Bài viết cuối: 08-03-2011, 09:57 AM

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn