Hướng dẫn tạo gadget trong Windows 7

Cập nhật lúc 09h22' ngày 29/06/2011

Quản Trị Mạng - Trong bài viết dưới đây, chúng tôi sẽ giới thiệu với các bạn một số thao tác cơ bản để tạo Gadget – 1 dạng ứng dụng nhỏ, được hỗ trợ trong Windows Vista và 7. Một điểm rất riêng biệt của gadget là có thể đặt tại bất cứ nơi nào trên màn hình Desktop, nhanh chóng cung cấp cho người sử dụng những thông tin cần thiết, hoặc đóng vai trò như 1 “cánh cửa” tới website hoặc một số chương trình, ứng dụng khác có quy mô lớn hơn.

Về mặt bản chất, những gadget này chỉ là trang HTML thu nhỏ, điều đó có nghĩa là không cần phải sử dụng tới những công nghệ hoặc yêu cầu kỹ năng lập trình cao cấp mới có thể tạo ra được gadget. Thậm chí, các bạn chỉ cần NotePad và 1 số kiến thức cơ bản về HTML cũng làm được việc này.

Và sau đây là các bước cơ bản theo trình tự:

 - Tạo mới 1 trang HTML, đặt tên là gadgetName.html

 - Tạo mới 1 file XML, đặt tên là gadget.xml

 - Copy 2 file đó vào 1 thư mục cụ thể nào đó. Ví dụ:

userDir \ AppData\Local\Microsoft\Windows Sidebar\Gadgets\ gadgetName.gadget

Dưới đây là phần chi tiết chúng ta cần thực hiện. Trước tiên, tạo mới 1 thư mục trên desktop và đặt tên là HelloGadget.gadget, bên trong đó chúng ta tiếp tục tạo mới 2 file. Đây là phần mã nguồn của file gadget.xml:

<?xml version="1.0" encoding="utf-8" ?>
<gadget>
  <name>HelloGadget</name>
  <version>1.0.0.0</version>
  <description>Hello World Gadget.</description>
  <hosts>
    <host name="sidebar">
      <base type="HTML" apiVersion="1.0.0" src="HelloGadget.html" />
      <permissions>Full</permissions>
      <platform minPlatformVersion="1.0" />
    </host>
  </hosts>
</gadget>

Tuy nhiên tại đây có 1 điểm có thể khiến nhiều người nhầm lẫn, đó là tên của trang HTML trong đoạn mã:

<base type="HTML" apiVersion="1.0.0" src="HelloGadget.html" />

Và dưới đây là phần mã của trang HelloGadget.html:

<html>
<script>
//----------------- resizes the gadget display surface
function DoInit() {
       document.body.style.width = 90;
       document.body.style.height= 55;
       document.body.style.margin=0;
}
</script>
<body onload="DoInit();">
<table border="5"><tr>

        <td><center><i>Hello World!</i></center></td>

</tr></table>
</body>
</html>

Sau đó, các bạn mở Windows Explorer và chọn tới thư mục sau:

userDir \ AppData\Local\Microsoft\Windows Sidebar\Gadgets\

Tại đây, userDir là tên tài khoản đang sử dụng. Còn nếu không thì copy trực tiếp qua đường dẫn sau đây:

%localappdata%\Microsoft\Windows Sidebar\Gadgets

Trong thư mục này, chúng ta sẽ thấy tất cả các gadget đã được cài đặt, mỗi 1 thành phần trong đó đều có file với phần mở rộng là .gadget (nếu muốn tìm hiểu kỹ về bản chất của gadget, các bạn hãy mở và xem mã nguồn bằng NotePad).

Sau đó, kéo và thả thư mục HelloGadget.gadget trực tiếp từ desktop vào thư mục trên.

Để kiểm tra, các bạn nhấn chuột phải trên desktop và chọn Gadgets, tại thời điểm này chúng ta sẽ nhìn thấy HelloGadget trong danh sách hiển thị:


Gadget có biểu tượng mặc định, nhưng phần tên đã được thiết lập sẵn trong file XML

Vậy là về phần cơ bản, chúng ta đã hoàn tất 1 số bước cơ bản để tạo gadget. Nhưng đây mới chỉ là phần mở đầu, còn rất nhiều thứ có thể làm được nếu chúng ta chịu khó tìm hiểu thêm.

Quá trình debug:

1 trong những chức năng thường xuyên được sử dụng nhất qua JavaScript là hàm alert() không thể sử dụng khi gadget hoạt động, và phương án thay thế của chúng ta là kéo – thả file HTML đó trực tiếp vào trình duyệt thì chức năng alert() sẽ hoạt động bình thường.

Trong Windows 7, có 1 khóa Registry ảnh hưởng trực tiếp tới quá trình debug này:

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Sidebar]

"ShowScriptErrors"=dword:00000001

sẽ kích hoạt thông báo khi có lỗi xảy ra. Còn nếu bạn sử dụng Visual Studio thì có thể dùng tính năng Just-In-Time bằng cách chèn thêm mã:

debugger;

tại mỗi phần đầu của các đoạn <script>.

Quá trình Packaging và Deployment:

Trên thực tế, Microsoft đã giải quyết vẫn đề này khá đơn giản và nhanh chóng. Tất cả những gì bạn cần làm là tạo 1 file nén chứa 2 file khác, sau đó thay đổi lại đuôi mở rộng thành *.gadget. Và khi bạn kích đúp hoặc nhấn chuột phải vào file *.gadget này, Windows sẽ yêu cầu bạn cài đặt thêm phần mở rộng cho Windows, tự tạo thư mục AppData và giải nén những file bên trong vào đó.

Và như đã đề cập bên trên, thực chất chúng ta không cần tạo thêm gói deployment, vì trong giai đoạn lập trình, các bạn có thể tạo nhiều thư mục bằng cách thủ công, sau đó làm việc và thao tác trực tiếp qua mã nguồn. Nhưng khi làm việc theo cách này (trực tiếp trong thư mục AppData), hãy cẩn thận khi gỡ bỏ ứng dụng gadget, quá trình này cũng sẽ xóa bỏ toàn bộ những file dữ liệu đi kèm. 1 cách khác có thể được ứng dụng tại đây là sử dụng file *.CAB thay vì *.ZIP. Chúc các bạn thành công!

T.Anh (theo ExpertExchange)
Đánh giá(?):
META.vn | Mua sắm trực tuyến
Bài viết mới nhất
Xem tất cả
Bài viết cũ hơn cùng chủ đề
Xem tất cả