По иронии судьбы я в настоящее время обновляю документацию SCSF для развертывания ClickOnce для .NET 4.0, и теперь я точно знаю, в чем проблема.
Сначала вы хотите опубликовать на диске, а не на веб-сервере. Сделайте это, а затем скопируйте DLL-файлы, которые вы хотите добавить в развертывание, в папку версии с манифестом приложения (.manifest). Переименуйте их сами - просто добавьте .deploy в конце.
Откройте MageUI и откройте манифест приложения в этой папке, затем снимите флажок «добавить .deploy к именам файлов». Нажмите «заполнить».
Затем удалите манифест развертывания из списка; это называется что-то вроде appname.application. Вы не хотите, чтобы он был включен в список файлов манифеста.
Теперь вы можете сохранить и подписать манифест приложения. Затем, не выходя из mageUI, откройте манифест развертывания, который находится в корневой папке ( NOT тот, который находится в папке версии). Нажмите «Ссылка на приложение», затем нажмите «Выбрать манифест». Найдите файл манифеста приложения в папке с версией, которую вы только что подписали, и выберите его. Затем просто сохраните и подпишите манифест развертывания. Он помещает туда относительный путь, поэтому, если вы измените файл .application в папке версии, он не будет работать правильно при развертывании.
Теперь возьмите этот файл .application из корневой папки и скопируйте его в папку версии (вместо той, которая там есть), чтобы у вас была правильная копия для этой версии на случай, если она понадобится вам позже.
Теперь скопируйте весь шебанг на веб-сервер. это должно работать.