2010-08-05 9 views
8

nếu bạn biên dịch chương trình trong D2010 tệp kê khai .res được tạo tự động. nó có được bao gồm trong chương trình của bạn theo mặc định không? hoặc bạn phải bao gồm nó cho mình? nếu có mức độ của privilage được trao cho bạn? chương trình của tôi sửa đổi một khóa đăng ký nó sẽ có thể làm như vậy với bất kỳ sửa đổi để tập tin .res? Nếu không có những gì sửa đổi tôi cần phải làm gì?
một câu hỏi phụ: có một thành phần/chuyên gia (prefably miễn phí) có thể tạo/bao gồm .res tệp trong các dự án delphi 7 và delphi 2007 của tôi tự động giống như delphi 2010?
chỉnh sửa: quên đề cập đến tôi không có win7 hoặc vista tôi cũng chẳng hề sử dụng chúng
edit2: tôi đã bao gồm một file manifest chỉ trong trường hợp sau đây this tutorial nhưng các hướng dẫn chỉ nói về windows vista và không 7 tệp .xml (tệp kê khai) trong hướng dẫn này làm cho ứng dụng của tôi có khả năng xử lý với win7 UAC quá
edit3 nếu tôi bao gồm tệp kê khai của riêng mình và delphi bao gồm nó theo mặc định cũng sẽ tạo 2 tệp kê khai (1 với ưu thế quản trị và số 2 không có) điều này có thể gây ra bất kỳ sự cố/hành vi không thể đoán trước nàolà các chương trình delphi 2010 có khả năng giải quyết UAC vista/win7 theo mặc định

+1

Tại sao chương trình của bạn cần sửa đổi khóa đăng ký cấp quản trị? Nếu chương trình của bạn cần làm điều đó, nó cũng sẽ gặp sự cố khi chạy trên các phiên bản Windows cũ hơn, trừ khi khách hàng của bạn có tất cả người dùng của họ chạy với các đặc quyền quản trị, điều đó sẽ là ngu xuẩn. Ngoài ra, nếu bạn định hỗ trợ các phiên bản Windows mới hơn, bạn nên mua một bản sao để có thể kiểm tra phần mềm của mình trên các nền tảng mà bạn yêu cầu hỗ trợ. –

+0

@rob kennedy: tình hình không phải là những gì bạn nghĩ rằng tôi nhận được lời mời thực tập, cuộc phỏng vấn đầu tiên của tôi diễn ra tốt đẹp nhưng họ yêu cầu tôi gửi một chương trình demo một trong những điều họ yêu cầu là chương trình của tôi sẽ có thể chạy cửa sổ thời gian bắt đầu giải pháp của tôi cho điều này là sửa đổi 'Software \ Microsoft \ Windows \ CurrentVersion \ Run' để làm cho nó khởi động trên cửa sổ khởi động tôi sợ hãi nếu họ kiểm tra nó trên windows7 dưới một tài khoản người dùng bình thường phần mềm của tôi sẽ thất bại: ( –

+0

Nếu bạn sửa đổi thiết lập đăng ký đó trong ** 'HKey_Current_User' **, bạn không nên gặp bất kỳ vấn đề gì. Hoặc nếu bạn đặt một shortcut cho chương trình của bạn trong thư mục Startup của menu Start, nó cũng sẽ hoạt động. * tồi tệ hơn * cho bạn yêu cầu đặc quyền quản trị cho chương trình của bạn nếu phần còn lại của các nhiệm vụ của nó không yêu cầu nó, ngoài ra, tôi chắc chắn bạn có thể nói cho họ biết khi bạn gửi chương trình mà bạn không có quyền truy cập vào Windows 7 và vì vậy bạn không thể kiểm tra nó ở đó; là một tình huống hoàn toàn dễ hiểu đối với một học sinh. Họ sẽ kiểm tra nó trên Windows XP để thay thế. –

Trả lời

8

Tệp kê khai được tạo bởi delphi cung cấp cho quy trình của bạn các đặc quyền thấp nhất (đó là mặc định bằng cách này).

Bạn phải sửa đổi tệp kê khai để cho số này là ASK để được phép chạy dưới quyền quản trị (Cao độ được gọi).

Đơn đăng ký của bạn với các đặc quyền tiêu chuẩn phải đọc/ghi thành HKEY_CURRENT_USER mà không có độ cao.

Truy cập %programfiles%HKEY_LOCAL_MACHINE yêu cầu độ cao. (Không chắc chắn về các tổ chức đăng ký khác)

Đây là một tệp PDF sẽ giúp bạn XẾP HẠNG với những gì bạn đang làm.

http://pascalfonteneau.developpez.com/articles/delphi/vista/uac/VistaUACandDelphi.pdf

+0

cảm ơn aldo, xem edit2 của tôi –

+0

Điều đó cũng sẽ làm việc cho Seven , Vâng. – zz1433

+0

cảm ơn một lần nữa, bây giờ vui lòng xem edit3 :-) –