2012-03-13 40 views
8

Nếu tôi thực hiện các thay đổi lớn đối với một đơn vị, tôi muốn thay đổi tên của nó để làm rõ nó là phiên bản khác và tránh nhầm lẫn với các phiên bản đã lưu trữ khác chẳng hạn: CSVUtils. PAS trở thành CsvUtilsNew.PASCông cụ để thay đổi tên đơn vị và tất cả các tham chiếu đến nó

Nhưng tất cả các tham chiếu tới nó từ các đơn vị khác đã được thay đổi bằng tay, ví dụ:

Unit ManiForm 

Uses 
    CSVUtils 

trở thành

Unit ManiForm 

Uses 
    CsvUtilsNew 

Điều này rất mất thời gian trong các dự án phức tạp.

Icarus rất giỏi trong việc tìm kiếm tất cả các tham chiếu, nhưng tôi không thể tìm thấy bất kỳ công cụ nào tự động cập nhật tất cả các đơn vị khác.

Có ai biết về bất kỳ công cụ nào tự động cập nhật tham chiếu đơn vị không?

Rất cám ơn

Trả lời

3

Bạn cũng có thể xác định bí danh đơn vị trong tùy chọn dự án của mình. Ví dụ: CSVUtils=CsvUtilsNew

+0

+1 Đối với sự sáng tạo, giả sử nó thực sự hoạt động. – NGLN

+0

Nó chắc chắn không hoạt động. Tôi đã sử dụng tính năng này để giúp di chuyển từ D6 đến D2010. Các đơn vị được đề cập là các đơn vị quản lý chủ đề XP của Mike Lischke đã được hấp thu vào Delphi trong D7 và dẫn đến thay đổi tên. Ngoài ra các đơn vị hình ảnh png và gif có tên khác nhau. Tôi chỉ cần các bí danh trong khi tôi muốn mã để biên dịch với cả hai trình biên dịch. Và bí danh đơn vị làm việc tuyệt vời. Tôi sẽ không coi chúng như một giải pháp lâu dài. –

+0

Bí danh đơn vị có thể là giải pháp phù hợp cho các nhà cung cấp thành phần cần một nguồn duy nhất để biên dịch trong tất cả các phiên bản delphi, nhưng ở cấp ứng dụng (không phải là nhà cung cấp cấp thành phần). –

7

Tôi sẽ sử dụng Notepad ++ hoặc UltraEdit tìm kiếm & Thay thế trong tất cả các file (* .pas, * .dpr, * .dproj) tên đơn vị cũ với tên đơn vị mới. Trừ khi bạn có các biến hoặc hàm có cùng tên với đơn vị, thao tác này hoạt động rất tốt, nhanh và không yêu cầu bất kỳ trình phân tích cú pháp chuyên biệt nào.

11

Tôi sẽ sử dụng GExperts Tìm kiếm và thay thế Grep.

+0

Bất kỳ grep nào cũng hoạt động cho việc này. Tôi đã sử dụng này (http://www.wingrep.com/) xương trần một trong nhiều năm. – RobertFrank

+0

Có lẽ, nhưng Grepperts grep được tích hợp vào IDE và phần nào được thiết kế theo hướng phát triển Delphi. –

+0

@Ulrich, tôi đồng ý. Với GExperts grep, bạn có thể giới hạn phạm vi của mình cho các dự án, nhóm dự án, thư mục, v.v. – iamjoosy

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