2012-07-22 28 views
9

này sẽ đề nghị không: http://msdn.microsoft.com/en-us/library/ee519072(v=vs.110).aspxTôi có thể sử dụng VS 2012 để tạo một bổ trợ Office 2007 không?

Nhưng, nhưng ... thực sự?

Office 2007 vẫn còn phổ biến - chắc chắn họ chưa bỏ hỗ trợ cho nó? Tôi cần phải hỗ trợ nó, và nó có vẻ như thế này có nghĩa là tôi không thể sử dụng VS2012.

Hoặc có thể hạn chế này chỉ áp dụng cho RC? (Xin vui lòng). Hoặc có lẽ nó tạo ra add-in được nhắm mục tiêu vào năm 2010 nhưng vẫn có thể chạy vào năm 2007? (Tay nắm chặt vào ống hút).

Cho tôi biết điều đó không phải là ...

+0

Có vẻ như vậy, nhưng đây là suy đoán tại thời điểm này. – JimmyPena

Trả lời

3

Bạn có thể tạo Office addin that targets 2010, but that still works in Office 2007. Bí quyết là bạn cần phải biết những gì các loại interop và các sự kiện có mặt trong năm 2007 so với năm 2010. Nếu bạn thử truy cập vào một sự kiện hoặc thành viên lớp không tồn tại trong năm 2007, bạn sẽ có vấn đề.

Visual Studio 2012 chỉ bao gồm các mẫu dự án Office 2010. Một khó chịu/hạn chế khác là họ đã loại bỏ hỗ trợ của Thiết lập dự án đó là cách chúng tôi đã phát hành plugin của chúng tôi. Dự án thiết lập đã được replaced by InstallShield Limited Edition (ISLE).

+0

Cảm ơn. Vậy công cụ của NoPIA như thế nào? Tôi cho rằng điều đó sẽ không hiệu quả, ít nhất là trong năm 2007? Có vẻ như tôi cần phải gắn bó với VS 2010 :-( –

2

FYI, khoảng tháng 3 năm 2013, tôi vừa tạo ra một Excel Addin nhắm mục tiêu đến Excel 2013 mà chỉ chạy tốt trong Excel 2007.

tôi phải xóa/thay thế các cuộc gọi đến get_Range nhưng điều đó không có gì ngạc nhiên kể từ khi get_Range luôn luôn có vẻ một chút của một hack.

#if PRE_VSTO_2012 
Excel.Range vsto_range = vsto_sheet.Cells.get_Range( 
    vsto_sheet.Cells[1, 1], 
    vsto_sheet.Cells[rowCount, colCount]) as Excel.Range; 
#else 
    Excel.Range top_left = vsto_sheet.Cells[ 1, 1 ]; 
    Excel.Range bottom_right = vsto_sheet.Cells[ rowCount, colCount ]; 
    Excel.Range vsto_range = vsto_sheet.Range[ top_left, bottom_right ]; 
#endif 

Tôi vẫn chưa tạo gói InstallShield LE. Đó là tiếp theo ...

+2

"Tôi vẫn chưa tạo gói InstallShield LE. Đó là tiếp theo ..." - Bạn là người nghèo. Bạn nghĩ bạn đã hoàn thành 90%, nhưng thực tế là 90% của nỗi đau và thất vọng nằm phía trước.Chúc may mắn nhất :-) –

+0

@GaryMcGill là như vậy damn đúng. Lần đầu tiên sử dụng installshield là một cơn ác mộng khủng khiếp so với các dự án thiết lập sẵn có trước đó. Chúc may mắn ;) –