Làm cách nào để đổi tên tệp thiết lập trong ClickOnce, từ setup.exe thành myapp.exe?Làm cách nào để đổi tên tệp thiết lập trong ClickOnce?
Trả lời
Bạn có thể đổi tên tệp sau khi được tạo không?
rằng người dùng đã không tải xuống tệp setup.exe nhưng tên tôi là myapp.exe – Mediator
Tôi không chắc mình hiểu những gì bạn đang nói. Nếu bạn triển khai một ứng dụng bấm vào một máy chủ web, bạn có thể thay đổi setup.exe thành myapp.exe và nó sẽ vẫn hoạt động. Các setup.exe (hoặc bất cứ điều gì bạn gọi nó) có chứa một liên kết đến manifest triển khai (tập tin ứng dụng). AFAIK, không có gì chứa liên kết đến setup.exe. Tất nhiên nếu bạn đang sử dụng publish.htm của Visual Studio được tạo ra, bạn sẽ cần phải chỉnh sửa nó và thay đổi 'setup.exe' thành 'myapp.exe' để nó gọi đúng. – RobinDotNet
Tệp 'setup.exe' có thể được đổi tên thành 'my_application_setup.exe' sau khi xuất bản. Nói trình cài đặt * ClickOnce * để thay đổi tên sẽ thuận tiện hơn. –
Tôi nghĩ bạn không thể sửa đổi tên tệp setup.exe từ thiết lập.
Nếu bạn phải phân phối tệp cài đặt của mình theo cách thủ công và setup.exe quá khó hiểu, bạn chỉ có thể tạo Dự án thiết lập, đổi tên tên tệp .msi và sau đó phân phối nó.
Chỉ cần đổi tên setup.exe thành myAppSetup.exe và chỉnh sửa tệp publish.htm
để thay đổi href từ setup.exe thành myAppsetup.exe. Người dùng có thể tải xuống điều này bằng cách nhấp chuột phải vào nút cài đặt và chọn Save As
. Tôi khuyên bạn nên myAppSetup.exe để không nhầm lẫn nó với thực thi.
Ồ, có một chút khó khăn khi tự động hóa quy trình này vì Visual Studio
chỉ có tùy chọn sự kiện xây dựng bài đăng để chạy công cụ bên ngoài và không xuất bản bài đăng. Vì vậy, hãy nhớ chỉnh sửa lại mỗi lần bạn phát hành phiên bản mới.
Không tìm thấy đúng tên .exe
trong tính năng "xuất bản". Nếu tôi truy cập vào c:\path\to\my\app\bin\Release\MyApp.exe
Tôi sẽ tìm thấy tệp tôi đang tìm kiếm. Điều này có vẻ khá ngớ ngẩn với tôi rằng "xuất bản" không thể cho tôi exe thích hợp tôi đang tìm kiếm, nhưng điều này hoạt động.
Đó không phải là giải pháp, nhưng nếu bạn đang sử dụng triển khai ftp và bạn có quyền truy cập http vào ftp của mình, bạn có thể triển khai tải xuống với bố cục nội dung thông qua php (hoặc ngôn ngữ khác, được hỗ trợ bởi lưu trữ của bạn) :
<?php
$file = 'setup.exe';
if (file_exists($file)) {
header('Content-Description: File Transfer');
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename=MySuperApp-setup.exe');// name it as you want
header('Content-Transfer-Encoding: binary');
header('Expires: 0');
header('Cache-Control: must-revalidate');
header('Pragma: public');
header('Content-Length: ' . filesize($file));
ob_clean();
flush();
readfile($file);
exit;
}
?>
Nhấp đúp vào Dự án của tôi trong Solution Explorer. Một biểu mẫu DataEntryApplication sẽ xuất hiện. Trong tab ứng dụng, nhập tên ứng dụng mong muốn của bạn vào trường Tên lắp ráp. Tái xuất bản giải pháp của bạn.
Tôi đã cố gắng khắc phục sự cố tương tự cho phần mềm của mình. Tôi đã có 'xxxx' trong trường Tên lắp ráp, nhưng khi tôi xuất bản nó sẽ tạo ra setup.exe. Tôi vừa đổi tên setup.exe thành xxxx.exe và cài đặt từ exe. Nó hoạt động tốt.
Tôi tình cờ gặp bài đăng này vì tôi muốn triển khai hai ứng dụng đến cùng một vị trí và đã rất ngạc nhiên khi tôi không thể làm điều này với studio trực quan. Đây là cách tôi giải quyết nó.
Đó là giá trị đề cập đến mà tôi không dựa trên visual studio để triển khai ứng dụng của tôi, nhưng sử dụng hai bước sau:
- xuất bản vào thư mục địa phương (
\bin\release\app.publish
) - triển khai đến webserver với
pscp.exe -r -batch -C -q -pw <pass> * <user>@<host>:<path>
my bố lệnh (bước 1) trông như thế này
msbuild /target:Rebuild;Publish MyApp.csproj
Bây giờ tôi đã thêm một mục tiêu đơn giản trong csproj
tập tin của tôi
<Target Name="AfterPublish">
<Move SourceFiles="$(OutputPath)app.publish\setup.exe" DestinationFiles="$(OutputPath)app.publish\viewer.exe" />
</Target>
và thay đổi lệnh xuất bản của tôi để
msbuild /target:Rebuild;Publish;AfterPublish MyApp.csproj
Đây là một công nghệ từ Microsoft để cài đặt chương trình – Mediator
Các * ClickOnce * là một trình cài đặt đơn giản. Sử dụng lý do của Microsoft về "đơn giản hóa", người dùng không thể thay đổi nhiều. Sau khi tất cả, nó được thiết kế để * bạn không cần phải thay đổi nhiều mục *. Đối với bất kỳ điều gì nhiều hơn, sử dụng một trình cài đặt thực sự. –