2009-01-15 9 views
8

Đề cập đến TLB and maintenance issues ...Delphi 2009 COM/Type Library ActiveX hỗ trợ ổn định

Câu hỏi của tôi với mọi người (thường xuyên) bằng cách sử dụng new COM/ActiveX type library support trong Delphi 2009:
Làm thế nào ổn định là việc thực hiện?

Đặc biệt, tôi mong muốn: thêm/xóa các lớp học, thay đổi GUID, đổi tên các phương pháp/tài sản, sắp xếp lại các phương pháp/tài sản, thư viện kiểu khổng lồ (50 lớp), ...

Có như ổn định như trong Delphi 2007 (một cơn ác mộng) hoặc Delphi 7 (khá OK, nhưng đôi khi bạn phải khôi phục tập tin TLB từ SVN) hoặc siêu ổn định (như trong, ... uhm, .... bạn có nhớ phiên bản Delphi nào không)?

EDIT: Vâng, tất nhiên, các văn bản RIDL là một ý tưởng tuyệt vời, nhưng câu hỏi của tôi là:
Là (mới) thực hiện sự hỗ trợ ổn định TLB (đặc biệt là đồng bộ hóa của RIDL nộp với trình soạn thảo TLB trực quan và các lớp thực hiện khi thực hiện các tác vụ mà tôi đã mô tả ở trên).

Trả lời

5

Vâng, một lần nữa, tôi là thiên vị, nhưng thử nghiệm nội bộ của chúng tôi cho thấy rằng giải pháp mới là nhiều, nhiều, ổn định hơn nhiều.

Và tất nhiên nó được thiết kế. Tất cả các 'thông minh' của các đối tượng COM/ActiveX của bạn bây giờ là văn bản dựa. Và vì nó dựa trên văn bản, nó hoàn toàn nằm dưới sự kiểm soát của bạn. Vì nó là dưới sự kiểm soát của bạn, bạn có thể làm cho nó làm những gì bạn muốn. Không còn hộp đen nữa. Quá trình này là minh bạch. Đối với nhập khẩu lớn, lông Thư viện kiểu, chúng tôi thành công nhập khẩu toàn bộ MS Office loại thư viện và điều khiển ActiveX, và những người đang khá lông.

Vì vậy, từ nơi chúng tôi ngồi câu trả lời cho câu hỏi của bạn là: Có, nó rất ổn định.

3

sự hiểu biết của tôi là RIDL được lưu trữ dưới dạng văn bản và biên soạn vì nó là cần thiết để duy trì các tập tin TLB trực tiếp là không còn cần thiết. Đây là một động thái tuyệt vời của đội CodeGear để cải thiện đáng kể sự ổn định.

Ứng dụng có xử lý thư viện loại lớn của bạn không? Thật khó để nói là tôi không có thứ gì gần với nó ... nhưng tôi không thể thấy lý do tại sao nó lại không.