Đây là những công cụ Windows nhỏ đảm nhận công việc vốn phải làm thủ công mỗi ngày: theo dõi thư mục và sắp xếp tệp, gửi tệp qua email, trích xuất dữ liệu từ tệp văn bản lớn, khởi chạy trộn tài liệu trong Word, làm mới liên kết trong bản trình chiếu PowerPoint hoặc lặp lại cú nhấp chuột. Mỗi công cụ được phát triển riêng cho một quy trình, hoạt động không cần giám sát và chỉ làm phiền người dùng khi có sự cố. Tôi xây dựng những chương trình này trong dịch vụ phát triển chương trình Windows và ứng dụng dịch vụ chạy nền.
Theo dõi thư mục và đổi tên tệp
Thực hiện trong quý IV năm 2021.
Vấn đề
Các tệp của khách hàng đồng thời xuất hiện trong nhiều thư mục; mỗi tệp cần được đổi tên theo một quy tắc chính xác rồi chuyển sang thư mục khác để bước xử lý tiếp theo tiếp nhận. Tên mới phải chứa đúng thời điểm tệp xuất hiện trong thư mục nguồn, đến từng giây. Thông tin này không thể ghi thủ công một cách đáng tin cậy.
Giải pháp
Một công cụ Windows tự theo dõi thư mục và xử lý từng tệp mới ngay khi xuất hiện đã được xây dựng:
- theo dõi đồng thời ít nhất mười thư mục hoặc tệp;
- đổi tên theo quy tắc, kèm dấu thời gian lúc tệp được thêm vào thư mục nguồn;
- di chuyển hoặc sao chép tệp đã đổi tên đến thư mục được xác định trước;
- giao diện đơn giản, trong khi trọng tâm vẫn là hoạt động nền đáng tin cậy.
Công nghệ sử dụng
- Ngôn ngữ lập trình C# (programiranje.co.rs): ngôn ngữ chính của công cụ.
- Theo dõi hệ thống tệp: giám sát thư mục và tệp theo thời gian thực.
- Dấu thời gian: thời điểm tệp đến được ghi chính xác trong tên mới.
Kết quả
Tệp đến thư mục đích đã được đổi tên và có chính xác thời gian xuất hiện mà không cần con người tham gia, nên bước xử lý tiếp theo luôn nhận đúng dữ liệu mong đợi.
Tự động chuyển tệp XML sang CSV và JSON
Thực hiện trong quý IV năm 2020.
Vấn đề
Khách hàng nhận các tệp XML lớn từ nhiều nguồn — một số được thêm mới, số khác được chuyển từ thư mục khác — và cần sử dụng chúng dưới dạng CSV hoặc JSON. Một số tệp bị hỏng; chúng không được phép làm dừng quá trình xử lý các tệp còn lại hoặc bị lẫn với những tệp đã xử lý thành công.
Giải pháp
Một công cụ có giao diện đồ họa tự quản lý toàn bộ quy trình đã được xây dựng:
- theo dõi liên tục một hoặc nhiều thư mục được chọn, bất kể XML được thêm mới hay chuyển đến;
- chuyển đổi tức thì mỗi tệp mới sang CSV hoặc JSON theo lựa chọn người dùng có thể thay đổi dễ dàng;
- phân loại sau xử lý: XML xử lý thành công được đưa vào thư mục “Đã xử lý”, tệp hỏng vào thư mục “Bị hỏng”;
- giao diện rõ ràng cho biết cài đặt hiện tại và những gì đang diễn ra.
Yêu cầu thay đổi trong quá trình làm việc, vì vậy công cụ được điều chỉnh qua nhiều vòng cho đến khi bao phủ toàn bộ quy trình của khách hàng.
Công nghệ sử dụng
- Ngôn ngữ lập trình C# (programiranje.co.rs): ngôn ngữ chính của ứng dụng.
- Giao diện người dùng đồ họa (GUI) để cấu hình và theo dõi hoạt động.
- XML, CSV và JSON: định dạng dữ liệu đầu vào và đầu ra.
Kết quả
Việc chuyển đổi không còn đòi hỏi thao tác thủ công; tệp hỏng được tách riêng để thấy ngay nội dung cần kiểm tra. Khách hàng hài lòng với công cụ hoàn chỉnh.
Tự động gửi tệp mới qua email
Thực hiện trong quý III năm 2021.
Vấn đề
Mỗi tệp, chẳng hạn PDF, xuất hiện trong một thư mục nhất định trên máy người dùng phải được gửi đến địa chỉ đã định trước. Quy trình cần hoàn toàn vô hình đối với người dùng trừ khi gửi thất bại; tệp đã gửi không được nằm lại trong thư mục rồi bị gửi lần nữa.
Giải pháp
Một chương trình nhẹ cho Windows 10 chạy nền đã được xây dựng:
- theo dõi thư mục: phát hiện ngay mỗi tệp mới;
- gửi qua email bằng tài khoản Gmail đến địa chỉ đã định;
- xử lý lỗi: ghi lại lỗi gửi và chỉ thông báo cho người dùng khi gửi thất bại;
- sau khi gửi, tùy lựa chọn, tệp được chuyển sang thư mục khác hoặc xóa;
- khởi động cùng Windows để luôn hoạt động sau khi máy tính khởi động lại;
- cài đặt trong tệp văn bản, gồm thông tin tài khoản, cho phép thay đổi mà không sửa chương trình.
Công nghệ sử dụng
- Ngôn ngữ lập trình C# (programiranje.co.rs): phát triển ứng dụng chính.
- Windows Service: hoạt động nền liên tục.
- Gmail: truyền email.
Kết quả
Người dùng chỉ cần đặt tệp vào thư mục; mọi việc còn lại tự diễn ra và chương trình chỉ xuất hiện khi có vấn đề thực sự cần xử lý.
Trích xuất dữ liệu từ tệp văn bản lớn
Thực hiện trong quý IV năm 2020 như một công việc khẩn cấp.
Vấn đề
Khách hàng cần ngay một ứng dụng Windows đơn giản để đọc tệp văn bản thuần, trích xuất những dòng nhất định theo dấu phân cách đã cho và ghi chúng vào tài liệu mới. Các tệp có kích thước lớn và công cụ cần được hoàn thành gấp.
Giải pháp
Một ứng dụng nhẹ, nhanh với một số khả năng được chọn cẩn thận đã được xây dựng:
- tệp cấu hình để người dùng đặt thư mục tìm kiếm mặc định và dấu phân cách dùng khi trích xuất dữ liệu;
- chọn tệp qua hộp thoại mở tệp quen thuộc của Windows;
- hiển thị tiến trình trực tiếp riêng cho việc đọc tệp và tạo tài liệu mới;
- chuẩn hóa dấu phân cách: khi nhiều dấu nằm liền nhau, ứng dụng tự chèn khoảng trắng để đầu ra dễ đọc;
- in dữ liệu đã trích xuất trên máy in được chọn mà không lưu tệp xuống ổ đĩa — dữ liệu không bị lưu lại và ổ đĩa không bị chất đầy.
Công nghệ sử dụng
- Ứng dụng Windows được xây dựng để xử lý và trích xuất văn bản.
- Theo dõi tiến trình thời gian thực trong khi đọc và tạo tài liệu.
Kết quả
Công việc từng đòi hỏi tìm kiếm trong các tệp khổng lồ nay chỉ còn là chọn tệp và nhấp một lần.
Nhận xét của khách hàng
★★★★★5/5“Cảm ơn bạn vì công việc tuyệt vời.”
Khởi chạy trộn tài liệu trong Word
Thực hiện trong quý I năm 2021.
Vấn đề
Khách hàng khởi chạy trộn tài liệu trong Word bằng mã VBA từ Excel, còn dữ liệu đến Word qua các tệp văn bản trung gian. Khách hàng muốn một đường đi trực tiếp hơn nhưng vẫn giữ Excel, nơi phần còn lại của quy trình đã hoạt động.
Giải pháp
Một chương trình thực thi độc lập đảm nhận riêng phần công việc liên quan đến Word đã được xây dựng:
- khởi chạy với tham số: chương trình nhận kết nối cơ sở dữ liệu cùng đường dẫn và tên mẫu;
- phối hợp với Excel: mã VBA vẫn ở Excel, còn phần khởi chạy Word được chuyển sang chương trình mới;
- đọc trực tiếp từ cơ sở dữ liệu nên không còn cần tệp văn bản trung gian;
- tự đóng ngay khi báo cáo hoàn tất, không để lại cửa sổ mở.
Công nghệ sử dụng
- Ngôn ngữ lập trình C# (programiranje.co.rs): được chọn nhờ độ tin cậy và khả năng phối hợp tốt với Microsoft Office.
- Microsoft Word Interop: làm việc với Word và trộn tài liệu.
- VBA trong Excel: phần quy trình hiện có dùng để khởi chạy chương trình.
Kết quả
Việc trộn tài liệu diễn ra qua đường đi ngắn hơn, không cần tệp trung gian; người dùng vẫn khởi chạy từ Excel theo cách quen thuộc.
Nhận xét của khách hàng
★★★★★5/5“Công việc xuất sắc, lập trình viên rất chuyên nghiệp.”
Tự động làm mới liên kết trong bản trình chiếu PowerPoint

Thực hiện trong quý III năm 2021, bổ sung trong quý IV năm 2021.
Vấn đề
Trong một tổ chức lớn, các bản trình chiếu PowerPoint được liên kết với tệp Excel dùng làm nguồn dữ liệu. Tệp Excel thay đổi liên tục nhưng liên kết trong bản trình chiếu không tự làm mới, nên PowerPoint hiển thị dữ liệu cũ cho đến khi có người cập nhật thủ công. Với số lượng tệp lớn, công việc này không thể thực hiện bằng tay. Môi trường còn làm vấn đề khó hơn: tất cả tệp nằm trong OneDrive và việc đồng bộ một lượng tệp lớn có những giới hạn mà giải pháp phải tính đến.
Giải pháp
Một chương trình Windows tự cập nhật liên kết trong bản trình chiếu sau khi tệp Excel thay đổi đã được xây dựng:
- tự động làm mới liên kết trong bản trình chiếu PowerPoint để hiển thị dữ liệu mới nhất từ các tệp Excel liên kết;
- chạy theo lịch trên máy chủ mà không cần người tham gia;
- làm việc với tệp trên OneDrive và chú ý duy trì đồng bộ ổn định;
- nhật ký hoạt động ghi mỗi lần bắt đầu và kết thúc để luôn biết việc làm mới được thực hiện khi nào;
- chương trình hỗ trợ gửi email nhận tiêu đề, nội dung và tệp đính kèm, cho phép bất kỳ bước tự động hóa nào gửi thư.
Công nghệ sử dụng
- Visual Basic 6 và VB.NET trên .NET Framework: chương trình làm mới được xây dựng ở cả hai phiên bản, còn chương trình gửi email bằng VB.NET.
- Tự động hóa PowerPoint và Excel: làm việc với bản trình chiếu và bảng tính liên kết.
- OneDrive: nơi lưu toàn bộ tệp.
Kết quả
Các bản trình chiếu tự làm mới đều đặn theo lịch, nên dữ liệu luôn theo kịp thay đổi trong Excel mà không cần thao tác thủ công, kể cả với số lượng tệp lớn.
Lặp lại cú nhấp chuột tại nhiều vị trí trên màn hình
Thực hiện trong quý III năm 2021.
Vấn đề
Khách hàng cần một ứng dụng Windows lặp lại gần như tức thời một cú nhấp chuột tại nhiều vị trí do họ xác định trên màn hình. Tốc độ và độ chính xác là yếu tố quyết định: mỗi bản sao của cú nhấp phải rơi đúng tọa độ đã định mà không có độ trễ đáng nhận thấy.
Giải pháp
- sao chép tức thời cú nhấp ban đầu đến mọi vị trí đã định;
- nhấp theo tọa độ: người dùng nhập chính xác tọa độ X và Y cho từng bản sao;
- tối đa mười lăm vị trí bổ sung trong một cấu hình;
- khoảng nghỉ có thể điều chỉnh giữa các cú nhấp lặp lại, dành cho chương trình cần thời gian phản hồi.
Công nghệ sử dụng
- Ngôn ngữ lập trình C# (programiranje.co.rs): ngôn ngữ chính của ứng dụng, được chọn nhờ độ chính xác và tốc độ phản hồi mà dự án yêu cầu.
Kết quả
Một thao tác từng cần nhiều cú nhấp liên tiếp nay chỉ cần một cú nhấp, với cùng độ chính xác mỗi lần.
Windows Forms được tối ưu cho bàn phím
Thực hiện trong quý II năm 2021.
Vấn đề
Các chương trình đáp ứng yêu cầu chức năng nhưng chưa thuận tiện: biểu mẫu sử dụng không gian vụng về, không phải lúc nào cũng thích ứng tốt khi cửa sổ đổi kích thước và gần như mọi thao tác đều cần chuột. Với người làm việc trong chương trình cả ngày, điều đó trở thành thời gian bị lãng phí.
Giải pháp
- biểu mẫu kích thước cố định tại những nơi thay đổi kích thước không mang lại lợi ích cho các điều khiển;
- bố trí điều khiển không lãng phí không gian biểu mẫu;
- thích ứng đúng với kích thước cửa sổ ở các biểu mẫu có thể mở rộng để bố cục luôn nhất quán;
- phím tắt cho mọi thao tác trong chương trình;
- di chuyển bằng phím Tab qua các trường theo đúng thứ tự làm việc thực tế.
Công nghệ sử dụng
- Ngôn ngữ lập trình C# (programiranje.co.rs): ngôn ngữ chính của ứng dụng.
- .NET Framework: xây dựng và cải thiện trải nghiệm ứng dụng.
- Anchor và Dock: thuộc tính điều khiển giúp bố cục biểu mẫu nhất quán khi thay đổi kích thước.
Kết quả
Người dùng làm việc nhanh hơn mà không phải liên tục chuyển tay giữa bàn phím và chuột; biểu mẫu giữ bố cục gọn gàng ở mọi kích thước cửa sổ.
Bạn cần một công cụ tương tự?
Phạm vi công việc, cách xác định giá và quy trình thực hiện được trình bày tại trang phát triển chương trình Windows và ứng dụng dịch vụ chạy nền. Xem chương trình điều khiển ứng dụng web bên thứ ba trong ví dụ gửi SMS từ chương trình máy tính, cùng các dự án khác trong nhóm chương trình Windows và tự động hóa.
Để Lại Bình Luận