Phần 1 : Lập Trình Auto Game với C#

1

Để thực hiện trước tiên bạn cần có kiến thức cơ bản về C#
Các bạn có thể theo dõi các khóa học C# tại đây :
học xong 2 cái này sẽ cũng cố kiến thức cho bạn đi sâu hơn vào code
và ở trang web trên các bạn có thể xem qua 1 chút về khóa học lập trình điều khiển ứng dụng để có thể dễ dàng code.
Nếu không có đủ kiến thức thì cũng chẳng sao, mình sẽ cố gắng custom lại code cho dễ sử dụng nhất.

1/Tải Source 

Vì nhiều bạn là newber nên khi code sẽ có nhiều lỗi phát sinh và mình không thể trực 24/24 để giúp các bạn fix hết lỗi được vậy nên mình tích hợp sẵn vào source cho các bạn dễ sử dụng.
Công cụ code: Visual Studio  tìm và tải như hình.

Sau khi tải và cài đặt xong thì tiến hành tải source.
Link : Auto Source
 giải nén và mở source


Giao diện Visual Studio

2/ Bắt đầu 

Tạo 1 form mới tên là form2
Tạo Form 2

Chọn Add
Làm như người ta là chicken vậy ,tạo form mà cũng hướng dẫn(sự thật thì lúc mình mới bắt đầu học C# lỡ tay bấm mất cái thanh toolbox mà loay hoay cả buổi để tìm) vậy nên mấy huynh đài cao nhân có đọc bài này thì đừng chê cười :)

Tạo 1 label để hiện thị loa game
Double click vào thanh tiêu đề trên form2 để vào xử lý code

Đầu tiên trong code mình khai báo 1 mảng Process[] với tên myProcess;
 public Process[] myProcess;

Trong form2 mình sẽ viết 2 hàm để kiểm tra load game
Hàm thứ nhất là IsGameAvailable để kiểm tra theo tên game
 public bool IsGameAvailable(string name)
        {
            myProcess = Process.GetProcessesByName(name);
            if (myProcess.Length != 0) { return true; } else { return false; }
        }
Và hàm thứ 2 CheckLoadGame  và settext cho label
  public void CheckLoadGame(string name)
        {
            if (IsGameAvailable(name))
            {
                try
                {
                    Process[] processlist = Process.GetProcessesByName(name); // 
                    Console.WriteLine(processlist.ToString());
                    foreach (Process process in processlist) // 2
                    {
                        label1.Text = "Loa Game Thành Công";
                    }
                }
                catch (Exception)
                {
                    label1.Text = "Loa Game Thất Bại";
                }
            }
            else
            {
                label1.Text = "Không tìm thấy Game";
            }
        }

để lấy tên game cần auto bạn mở taskmanager lên , ví du mình muốn load game Đao kiếm 2
nhìn vào Task thấy chữ dj2.exe *32   mình chỉ lấy chuỗi đầu  tiên (dj2)  trước .exe thôi.

cách lấy tên process game
Trong hàm Load Form Chỉ cần gọi lại Hàm CheckLoadGame  với tham số là 1 chuôi  tên game 
 private void Form2_Load(object sender, EventArgs e)
        {
            CheckLoadGame("dj2");
        }

Muốn chạy form nào trước thì chỉnh trong này

Sau đó nhấn F5 để debug chạy Chương trình.
Mình có thiết lặp thêm backgound cho form để trông đẹp mắt tý
Check load game thành công
Vậy là chúng ta đã check load game thành công.
Sau đây là full code xử lý:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Diagnostics;

namespace AutoControlAppPC
{
    public partial class Form2 : Form
    {
        public Process[] myProcess;
        public Form2()
        {
            InitializeComponent();
        }
        #region CheckLoadGame
        public bool IsGameAvailable(string name)
        {
            myProcess = Process.GetProcessesByName(name);
            if (myProcess.Length != 0) { return true; } else { return false; }
        }
        public void CheckLoadGame(string name)
        {
            if (IsGameAvailable(name))
            {
                try
                {
                    Process[] processlist = Process.GetProcessesByName(name); // 
                    Console.WriteLine(processlist.ToString());
                    foreach (Process process in processlist) // 2
                    {
                        label1.Text = "Loa Game Thành Công";
                    }
                }
                catch (Exception)
                {
                    label1.Text = "Loa Game Thất Bại";
                }
            }
            else
            {
                label1.Text = "Không tìm thấy Game";
            }
        }
        #endregion
        private void Form2_Load(object sender, EventArgs e)
        {
            CheckLoadGame("dj2");
        }
    }
}
Nếu bạn cảm thấy hay thì hãy click vào quảng cáo để ủng hộ giúp mình nhé.

Post a Comment

1Comments
  1. Bài viết hay mà link die mất rồi ad có thể úp lại file source được khộng ạ

    ReplyDelete
Post a Comment