2009-05-22 47 views

Trả lời

11

This code cho thấy rằng việc kiểm tra đăng ký đơn giản sẽ thực hiện công việc.

Đây là mã được chuyển thành C# (và được cải thiện một chút để sử dụng câu lệnh using).

using Microsoft.Win32; 

// Check whether Microsoft Word is installed on this computer, 
// by searching the HKEY_CLASSES_ROOT\Word.Application key. 
using (var regWord = Registry.ClassesRoot.OpenSubKey("Word.Application")) 
{ 
    if (regWord == null) 
    { 
     Console.WriteLine("Microsoft Word is not installed"); 
    } 
    else 
    { 
     Console.WriteLine("Microsoft Word is installed"); 
    } 
} 

Lưu ý rằng nó không đủ tốt để kiểm tra C:\Program Files\Microsoft Office\ cho file EXE msword, như là người dùng có thể cài đặt nó ở một nơi khác.

+1

Làm cách nào để có phiên bản 2003 hoặc 2007? – Sauron

0

Một trong những giải pháp, tôi nghĩ sẽ tốt hơn nếu bạn google nó. Để Kiểm tra xem Excel đã được cài đặt hay không, tôi sử dụng C# mã này

Excel.Application app = new Excel.ApplicationClass(); 

nếu app == null đó có nghĩa là excel không được cài đặt trên machine.If bạn kiểm tra các tài liệu MSDN, bạn sẽ có thể để có được cú pháp cho mở một từ.

+0

Tôi có cú pháp để mở tài liệu từ. Nhưng nếu từ không được cài đặt ............. – Sauron

+1

Tôi nghĩ toán tử mới trả về một đối tượng trong mọi trường hợp. Vì vậy, 'ứng dụng' không thể là null, phải không? Có thể có một ngoại lệ nếu Word chưa được cài đặt nhưng tôi chưa biết. – Alex

Các vấn đề liên quan