WinHelp

**Microsoft WinHelp** là một định dạng trợ giúp trực tuyến riêng có thể được hiển thị bởi trình duyệt Microsoft Help *winhelp.exe* hoặc *winhlp32.exe*. Định dạng file này được dựa trên Rich Text Format (RTF). Nó vẫn là nền tảng Trợ Giúp phổ biến từ nền tảng  Windows 3.0 cho đến Windows XP. WinHelp đã bị gỡ bõ trên Windows Vista để ngăn cản các nhà phát triển phần mềm không sử dụng lại định dạng lỗi thời này và khuyến khích họ sử dụng các định dạng Trợ giúp mới hơn.

## Lịch sử
* 1990 - WinHelp 1.0 được đi kèm với Windows 3.0.
* 1995 - WinHelp 4.0 đi kèm với Windows 95 / Windows NT.
* 2006 - Microsoft tuyên bố họ sẽ từ bỏ hỗ trợ WinHelp từ từ. WinHelp không được đi kèm theo Windows Vista. Các file WinHelp bao gồm các dạng 16 bi và 32 bit. Vista xử lý những file này theo cách khác. Định dạng.hlp, Windows cảnh báo rằng định dạng này k còn được hỗ trợ. Một phiên bản dùng để xem có thể download được cho các file.hlp 32 bit đã được Microsoft hỗ trợ trên trang Microsoft Download Center. Các file WinHelp 16 bit tiếp tục được hiển thị trên Windows Vista (chỉ trên phiên bản 32 bit) mà không cần phải download chương trình viewer (chương trình dùng để xem).
* 14/10/2009 - Microsoft tuyên bố một chương trình Windows Help (WinHlp32.exe) có thể tải về được cho Windows 7 tại Microsoft Download Center.

## Định dạng tập tin
File WinHelp có đuôi là".hlp". Nó có thể đi kèm bởi một file bảng nội dung tùy chọn (.cnt) nếu nhà phát triển file help tạo ra. Khi Windows mở một file Winhelp, nó tạo ra một file.gid trong cùng thư mục, chứa những thông tin về file.hlp như kích thước cửa sổ và thư mục lưu. Nếu người dùng nhấp vào thẻ "Find" và kích hoạt keyword indexing (thư mục hóa từ khóa), Windows sẽ tạo một file index(chỉ mục) với đuôi.fts (full text search-tìm kiếm toàn văn bản).

Một số công cụ phần mềm có thể mở gói một file WinHelp thành các tài liệu chứa bên trong nó như —HPJ, CNT, RTF, BMP, SHG). Một file HPJ là một file dự án được tạo ra và chỉnh sửa bên trong Help Workshop (hoặc một công cụ quản trị help của một bên thứ ba). HPJ có chứa các thông tin về những file RTF để đóng gói thành file help, MAP ID và Alias để cung cấp các đường dẫn từ một ứng dụng gọi tới file help, và hiển thị file help (kích thước cửa sổ, các nút nhấn mặc định, sơ đồ màu,...). File CNT cung cấpmmottojo bảng nội dung cho file help. Một file SHG là một file đồ họa  "SHED" có thể tạo ra cơ bản một sơ đồ hình ảnh của các lần gọi help cho một file đồ họa (như.BMP).

Một số công cụ có thể đọc và xem cấu trúc của những file này. (Xem ví dụ Trợ giúp về RTF và winhelpcgi).

## Nguồn file và biên soạn
Các file nguồn yêu cầu phải được đóng gói (biên dịch) thành một file.hlp bao gồm một hoặc nhiều hơn các tài liệu có đuôi.rtf và một file project help với đuôi.hpj, vùng với bất kỳ file hình ảnh nào (.bmp,.wmf, hoặc.shg) mà sử dụng bên trong file Help. Một file bảng nội dung tùy chọn với đuôi.cnt có thể cũng được tạo ra để sử dụng với file.hlp.

Bên trong file.rtf, các chủ đề được chia ra bởi các page break. Mỗi chủ để có một sê ri cước chú (footnote) có chứa các thông tin cho bộ biên dịch (compiler):  
: các cước chú **#**có chứa ID của chủ đề (thường tạo các liên kết tới chủ đề đó).
: các cước chú **$** có chứa tên giống như nó hiển thị trên bảng nội dung, index, và các nơi khác.
: các cước chú **K** có chứa các từ khóa dùng cho index.
: các cước chú **A** có chưa các từ khóa Xem Thêm (See Also).
: các cước chú * có chứa các thẻ build.
: các cước chú **+ **có chứa các thông tin thứ tự duyệt.
: các cước chú **!** có chứa các macro đưa vào chủ đề.
Chỉ cước chú # là bắt buộc phải có. Tất cả các cước chú khác chỉ là tùy chọn.

Văn bản trong mỗi chủ đề có thể chứa các định dạng đặc biệt, chẳng hạn In đậm, in nghiêng, và màu sắc. Superscript and subscript are not allowed. Jumps between topics in the same Help file usually appear in the source document as double-underlined text (green by default, though this can be overridden) followed by a topic ID in hidden text. Popup links appear in the source document as text with a single underline (also green by default) followed by a topic ID in hidden text.  (In the.hlp file, the jumps show up as green text with a single underline, and popups show up as green text with a dotted underline.)

Hình ảnh có thể được thêm vào có dạng {bmc image.bmp}. Hỗ trợ các định dạng như .bmp,.wmf, và .shg(sử dụng cho các sơ đồ hình ảnh mà có thể chứa các liên kết tới hoặc các trang popup được kích hoạt bằng cách click vào các phần đặc biệt của bức ảnh).

Sau khi các file nguồn được tạo ra, file help có thể được đóng gói (biên dịch) bằng bộ đóng gói WinHelp như HCW.exe hoặc sử dụng một chương trình phần mềm thương mại như RoboHelp hoặc HelpBreeze , phổ biến nhất (bao gồm cả hai chương trình trên) cũng có thể sử dụng hcw.exe làm bộ đóng gói backend.

## Hình ảnh hiển thị và các tính năng của WinHelp
Tùy thuộc vào cách khởi động và cài đặt mà người tạo file Help chọn, một file WinHelp sẽ được mở hoặc là chủ đề mặc định của nó, hoặc bảng nội dung của nó, hoặc chỉ mục của nó.

Một chủ đề trong một file WinHelp mở trong một cửa sổ riêng, trong một kích thước và vị trí đặt sẵn mà tác giả fiel Help chọn. Người dùng có thể điều chỉnh lại vị trí và kích thước của cửa sổ này. Người tạo file Help có thể điều khiển xem file Help có lưu lại các cài đặt của người dùng giữa các phiên hay không, hoặc luôn mở trong kích thước và vị trí mặc định.

Khi một chủ đề được mở, một thanh tiêu đề ở trên cùng của cửa sổ Help sẽ hiển thị tiêu đề của chủ đề. Bên dưới đó là một hàng gồm menu (**File**, **Edit**, **Bookmark**, **Options**, and **Help**), điều khiển nhiều đặc điểm của file đó. Một hàng gồm các nút nhấn thường xuất hiện dưới thanh menu đó. Người tạo file Help sẽ quyết định nút nhấn nào nên xuất hiện. Các nút nhấn thông thường bao gồm **Contents**, **Index**, **Back**, and **Print**, đi kèm với hai nút **<<** và **>>** để duyệt file. Người tạo file Help có thể cũng tạo ra các nút nhấn tùy biến để nhảy tới các chủ đề nhất định hoặc thực hiện các tác vụ khác.

Dưới các nút nhấn này là khu vực chứa văn bản chính của cửa sổ chương trình. Điển hình là văn bản sẽ bắt đầu với một đề mục, thường là in đậm hoặc có kích thước font lớn hơn phàn còn lại của văn bản. Đề mục này có thể đôi khi nằm trong một khu vực không thể cuộn được-một khu vực cửa sổ k thể di chuyển lên hoặc xuống được thông qua thanh cuộn nằm bên hông của window. Các khu vực không cuộn được có thể chỉ được sử dụng tại phần đầu của một chủ đề. Người tạo file Help có thể điều chỉnh kích thước và màu nền của khu vực không cuộn được.

Tác giả file Help cũng có thể kiểm soát màu nền của vùng văn bản chính, nơi mà các văn bản thực tế của chủ đề xuất hiện. Văn bản này có thể được định dạng và sắp xếp theo nhiều cách. Trong văn bản này, các nhảy xuất hiện với các ký tự màu xanh lá cây với một dấu gạch chân đơn. Nhấp chuột vào một nhảy sẽ mở một chủ đề khác. Một số nhảy có thể mở cửa sổ Help thứ cấp để hiển thị thông tin. Cửa sổ popup xuất hiện trong văn bản với các ký tự màu xanh lá cây với một gạch dưới chấm. Single-click trên một popup sẽ mở ra một cửa sổ nhỏ không có menu, các nút, hoặc thanh cuộn, kích thước để phù hợp với các văn bản. Thông thường, các trang popup cung cấp các định nghĩa ngắn của các thuật ngữ chính hoặc các thông tin bổ sung khác về các văn bản chính. Popup tự động biến mất trong thời gian người dùng nhấp chuột hoặc nhấn một phím mới.

Nhiều, mặc dù không phải tất cả các chủ đề của Help có phần **See Also **(Xem thêm) ở cuối văn bản. Tùy thuộc vào tùy chọn của tác giả Help, tính năng này có thể là một danh sách đơn giản của nhảy (giống liên kết-link) dưới tiêu đề *Xem thêm*, hoặc nó có thể là một nút nhỏ, khi nhấn vào, sẽ hiện lên một hộp thoại hiển thị tất cả các chủ đề có liên quan. Nhấp vào tên của chủ đề trong đó hộp thoại đó sau đó nhấp vào **Display** để mở ra chủ đề đó.

Hầu hết các file Help cũng chứa một bảng nội dung và một chỉ mục để giúp người dùng định vị thông tin. Những thứ này xuất hiện trong một cửa sổ riêng biệt, theo dạng thẻ. Nhấp vào tab** Contents** để mở bảng nội dung, trong đó người dùng có thể nhấp vào tiêu đề để xem các chủ đề. Thông thường, các tiêu đề được đánh dấu bằng các biểu tượng trông giống như những cuốn sách nhỏ và các chủ đề có các biểu tượng trông giống như các trang sách. Kích đúp chuột vào một chủ đề (hoặc nhấp chuột vào một chủ đề, sau đó bấm **Display**) để mở chủ đề đó. Nhấp vào thẻ **Index **để mở các chỉ mục, trong đó có một trường đề nhập liệu và một danh sách từ khóa theo thứ tự abc. Đánh máy vào trường nhập liệu sẽ tự động cuộn danh sách các từ khóa tới từ gần giống nhất. Kích đúp chuột vào một từ khóa (hoặc nhấp chuột vào một từ khóa sau đó nhấp vào Display) sẽ hiển thị các chủ đề liên quan đến từ khóa đó (nếu chỉ có một) hoặc đưa lên một danh sách của tất cả các chủ đề liên kết với nó. Chỉ mục này rất quan trọng trong việc giúp người dùng định vị thông tin. Đôi khi các file Help cũng có một thẻ **Find**, cho phép người dùng tìm kiếm cho bất kỳ từ nào được sử dụng trong văn bản của tập tin đó, không chỉ là các từ khóa.

WinHelp cũng hỗ trợ một tính năng được gọi là *tình huống nhạy cảm-*context-sensitive help. Context-sensitive help là phụ tá giúp tìm từ phù hợp với nơi mà người dùng đang ở phần mềm, và những gì họ đang cố gắng làm.

Một tính năng bảo mật khá quan trọng là cũng có thể bao gồm một tập tin DLL chứa mã tùy chỉnh và kết hợp nó với các chủ đề WinHelp. Điều này làm cho các tập tin.HLP tương đương với các file thực thi.

## Kết thúc hỗ trợ
Tại hội nghị WritersUA năm 2006, Microsoft đã công bố ý định của mình từ từ không hỗ trợ WinHelp như là một nền tảng nữa. Ted Dworkin (Partner Giám đốc WinHelp Experience) nói, "WinHelp không đáp ứng được các tiêu chuẩn mã lập trình thiết lập cho Vista. Các tiêu chuẩn này bao gồm bảo mật, độ tin cậy, và hiệu suất." Ông tiếp tục nói rằng WinHelp được thiết kế theo cách như vậy mà, "... chúng tôi sẽ phải viết lại nó từ mặt đất lên để đáp ứng các tiêu chuẩn mã Vista. Và cách tiếp cận đó không có ý cho rằng chúng tôi có hai hệ thống Help khác nhau trong Vista. "

Thỏa thuận cấp phép cập nhật nghiêm cấm các nhà phát triển ứng dụng đóng gói các thư viện WinHelp với các trình cài đặt của họ. Điều này có nghĩa là hướng dẫn sử dụng WinHelp cho các ứng dụng trước đó không thể đọc được trên một cài đặt Windows Vista mới. Để đọc chúng, người dùng phải có được bản WinHelp viewer  32-bit từ trang web của Microsoft và cài đặt nó thủ công (điều này yêu cầu phải xác nhận WGA và một tài khoản với quyền quản trị).

### Hỗ trợ Windows 7
Microsoft đã đưa ra chương trình Windows Help (WinHlp32.exe) cho Windows 7 vào 14/10/2009, một tuần trước hạn chót vào ngày 22/10. Microsoft gần đây đã thông báo là sẽ tách bộ download cho  Windows 7, Windows Server 2008, Windows Server 2008 R2, và Windows 8 sẽ được chào hàng sau các phiên bản RTM của những sản phẩm này.

### Hỗ trợ Windows 8
Có một bản download cho Windows Help program (WinHlp32.exe) cho Windows 8.

## Các định dạng tập tin tài liệu khác
Mặc dù tài liệu có thể được duy trì hoàn toàn trong một định dạng trình bày cụ thể của nhà cung cấp là WinHelp, các trường hợp tài liệu đó phải được công bố trong nhiều định dạng trình bày cùng một lúc lại phổ biến hơn: Microsoft Compiled HTML Help (CHM), WinHelp, các trang HTML, Java Help, PDF,.v.v. Sẽ rất tốn kém và dễ bị lỗi để duy trì mỗi định dạng riêng lẻ.

Vì lý do này, các tác giả thường xuyên duy trì các tài liệu trong một tiêu chuẩn công nghiệp, định dạng phân quyền nhà cung cấp trung lập - như DocBook hoặc FrameMaker-mà có thể được sử dụng để tạo ra nhiều định dạng trình bày khác nhau (bao gồm cả WinHelp). [Cần dẫn nguồn] Các tập tin trình bày khác nhau được tạo ra như vậy (với WinHelp hoặc các công cụ khác) có chứa nội dung phù hợp bởi vì chúng đã được tạo ra từ cùng một nguồn.

## Xem thêm
* Microsoft Compiled HTML Help (tập tin mở rộng.chm)
* Microsoft Help 2
* Microsoft Help Viewer
* OS/2's INF Help (còn gọi là IPF hoặc Information Presentation Facility)

## Tham khảo

## Liên kết ngoài
* Help-Info: Thông tin về Online Help (Microsoft), Ví dụ,...
* HelpMaster: Lựa chọn lớn nhất của WinHelp, HTMLHelp và các file và gợi ý liên quan đếnHTML