2011-12-19 28 views
5

Có cách nào để nói một dự án Delphi xây dựng một DLL để sử dụng như một ứng dụng máy chủ thực thi trong cùng thư mục với thư mục đầu ra của DLL đang được xây dựng không?Ứng dụng máy chủ Delphi XE2 từ thư mục đầu ra

một cái gì đó như thế này:

DLL host app Delphi - this does not work

Một điều là, tôi đang sử dụng bộ tùy chọn với Delphi XE2, vì vậy trong dproj cho DLL Tôi đang xây dựng Tôi thậm chí không có một DCC_ExeOutput thư mục, không chắc chắn nếu có vấn đề.

Việc cho phép điều này sẽ nghiêm trọng giải quyết một số vấn đề mà chúng tôi đã gặp phải khi cố di chuyển từ VSS sang SVN.

Ngoài ra, bạn gọi $ (điều) là gì?

Trả lời

4

Các điều $(name) là các biến môi trường. Tôi đã cố gắng thiết lập các ứng dụng máy chủ để .\$(Platform)\$(Config)\Test.exe và nhận được thông báo lỗi này:

Could not find program, '.\%Platform%\%Config%\Test.exe'. 

Lưu ý cách $(...) đã được tạt vào cú pháp biến môi trường.

Tôi cũng đã cố gắng với $(systemdrive)\Test.exe và nhận được thông báo lỗi này:

Could not find program, 'C:\Test.exe'. 

Vì vậy, rõ ràng các biến môi trường sẽ được thay thế bằng giá trị của họ, nếu họ thực sự tồn tại. Tôi nghĩ rằng nó là hợp lý để kết luận rằng môi trường được sử dụng để bắt đầu một ứng dụng máy chủ lưu trữ rõ ràng không xác định các biến môi trường đặc biệt Delphi đặc biệt.

Vì vậy, tôi nghĩ câu trả lời cho câu hỏi của bạn là bạn không thể sử dụng tính không giới hạn như thế này cho cài đặt ứng dụng máy chủ lưu trữ.

Mặt khác, các biến môi trường được thay thế vì vậy có lẽ bạn có thể sử dụng nó để làm cho mọi thứ dễ dàng hơn. Nói cách khác, bạn có thể định nghĩa một số biến môi trường của riêng bạn. Tôi không biết liệu đó có thể giúp bạn vì tôi không biết chi tiết chính xác về vấn đề của bạn hay không.

+0

Huh, tất cả dường như đúng, nhưng bạn nghĩ tôi có thể đặt những người có sự kiện xây dựng tiền liên kết mà MSBuild sẽ chạy. Bằng cách đó tôi có thể làm một cái gì đó như 'set outdir = .. \ debug \ final'. điều đó dường như không muốn làm việc. Tôi có thể nói có một sự khác biệt giữa các biến môi trường Delphi và các biến môi trường Windows, nó chỉ là không rõ ràng khi mỗi người trong số họ có thể được gọi. –

+1

Mô hình tinh thần của tôi là cài đặt ứng dụng máy chủ được áp dụng sau khi tạo nên tất cả các vars xây dựng không còn áp dụng nữa. Nhưng đó chỉ là phỏng đoán. Và IDE plugin bằng cách sử dụng toolsapi có thể gặt hái phần thưởng đặc biệt vì chúng tôi đã chứng minh rằng env vars được mở rộng. –

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