Luba ClickOnce'il installida sama projekti mitu avaldatud programmi samasse keskkonda (ainult.NET Frameworki väljaanded)

Lehekülg uuendatud :
Lehe loomise kuupäev :

Toimingu kontrollimise keskkond

Visuaalne Stuudio
  • Visual Studio 2022
.NET Raamistik
  • .NET Raamistik 4.8

Nõutavad keskkonnad

Raamistik
  • Windowsi vormid (.NET Framework) üldiselt
  • WPF (.NET Framework) üldiselt

Alguses

Selles näpunäites kirjeldatakse, kuidas installida samasse keskkonda eraldi mitu avaldatud ClickOnce'i samast projektist.

Teave sama projekti mitme eksemplari avaldamise korra kohta erinevates konfiguratsioonides

Näiteks isegi samas projektis, kui töötlemise sisu muudetakse sõltuvalt järgu konfiguratsioonist, võiksite avaldada eraldi programmina. See on võimalik .NET (Core) versioonis, kuid mitte Visual Studio standardfunktsioonidega .NET Frameworki versioonis.

See meetod on kokku võetud järgmistes nõuandetes, kasutades partiiprogrammi. Seda näpunäidet selgitatakse eeldusel, et järgmine sisu on lõpule viidud.

Tingimused, mille alusel ClickOnce installitakse eraldi rakendustena

Kui avaldate ülalkirjeldatud pakettprogrammi abil, muudetakse järgu konfiguratsiooni, kuid mõlemat käsitletakse sama rakendusena, Kui proovite installida kaks samasse keskkonda, tekib konflikt ja installimine ebaõnnestub isegi siis, kui proovite hiljem installida.

Pean tegema nii, et see oleks eraldi rakendus, kuid viidatud artikli kohaselt tuvastavad rakenduse järgmised parameetrid:

Viide: (.NET) Kui käivitan rakenduse pärast ClickOnce'iga avaldamist, saan teada, et "paigutuse ID ei vasta tellimusele"

  • Rakenduse nimi
  • Avaliku võtme märk
  • Kultuur
  • Protsessori arhitektuur (näiteks x86)

Nende hulgas arvan, et "kultuuri" ja "protsessori arhitektuuri" muutmine on ebasoovitav, kuna on olemas soovimatu töötlemise tulemuste võimalus.

Ma arvan, et on olemas võimalus muuta "rakenduse nime", Põhimõtteliselt ei ole see soovitatav, sest ühele projektile saab anda ainult ühe nime. On olemas võimalus, et projektifaili sisus saab järgu konfiguratsiooni ja tingimuse parameetrite abil teha mitu määratlust, Kuna Visual Studios saab seadistada ainult ühe kasutajaliidese, on see veidi ohtlik, kuna see võib sõltuvalt operatsioonist üle kirjutada.

Ülejäänud on "avaliku võtme märk", kuid see võimaldab teil luua mitu sertifikaati, Kuna seda saab ClickOnce'i avaldamise ajal parameetrina määrata, tahaksin rakenduse selle ajaga tuvastada.

Toimimise kontrollimise protseduur

Alates projekti loomisest kuni punktini, kus see on valmis partiifailina avaldama, on see sama, mis järgmised näpunäited, nii et palun vaadake seda kuni selle ajani.

Serdi loomine

Seekord kinnitame proovi testitõendiga. Algselt tuleks seda teha tavalise sertifikaadiga, kuid kuna see nõuab muud menetlust kui peamine teema, näiteks sertifikaatide loomine ja sertifikaadiasutuse ettevalmistamine, jätan sertifikaatidega seotud selgituse välja. Tootmises on okei asendada testsertifikaadi fail tootmisfailiga.

Pärast projekti loomist ja avaldamiseks mõeldud partii loomist naaske Visual Studiosse. Avage projekti atribuudid ja valige vasakul asuvast menüüst Sign (Allkirjasta). Seal on kontroll "AllkirjastaGe ClickOnce manifest", nii et kontrollige seda.

Nüüd looge kaks sertifikaati. Seekord loome selle sellel ekraanil, kuid ". pfx" failivormingus, pole probleeme sertifikaatide loomisega muul viisil.

Paremas alanurgas on nupp "Loo testsertifikaat", nii et klõpsake seda.

Võite panna ka parooli, kuid see toimib, olenemata sellest, kas panete selle sisse või mitte. Kui aga soovite parooli panna, on protseduur tülikas, nii et ma ei pane seda seekord.

Teie projekti jaoks on loodud serdifail (.pfx). Siin loodud failinimi on fikseeritud, kuid seda saab hiljem muuta. Muide, siin loodud testisertifikaadi kehtivus on üks aasta. Ühe aasta pärast peate uuesti looma uue sertifikaadi.

Uue loomiseks toimige samade juhiste järgi.

Seekord avaldame silumisjärgus ja väljalaskejärgus, nii et muudame nime selgeks.

Partii muutmine

Avage tekstiredaktoris loodud pakettfail (.bat) ja lisage msbuildi parameetritele järgmine:

parameetri nime kirjeldus on nõutav
ManifestivõtiFile Sertifikaadi failinimi (.pfx). Määrake projektifailiga seotud või absoluutne tee.
ManifestCertificateThumbprint Manifesti tunnistuse pöidlajälg. Väärtus, mida tuleb panna, võib olla ükskõik milline, kuid see tuleb igal juhul sisse panna.
Tootenimi Toote nimetus. See muutub käivitusmenüü või programmide loendi kuvatavaks nimeks.
Kirjastaja nimi Avalik ettevõtte nimi. See muutub kausta nimeks programmide korraldamisel menüüs Start.

Ülaltoodu põhjal muutke patch-faili järgmiselt.

Klõpsake nuppuOnceDebug avaldab.bat (näide)

call "C:\Program Files\Microsoft Visual Studio\2022\Community\Common7\Tools\VsDevCmd.bat"
cd %~dp0
msbuild ClickOnceBuildConfiguration.sln /t:Publish /t:CopyPublishedApplication /p:Configuration=Debug /p:PublishUrl="publish\Debug\\" /p:InstallUrl="\\xxxxServer\publish_Debug\\" /p:ManifestKeyFile="ClickOnceMultipleInstallDebug.pfx" /p:ManifestCertificateThumbprint="Debug" /p:ProductName="CliclOnce テスト Debug システム" /p:PublisherName="Sorceryforce"

Klõpsake valikutOnceRelease Issue.bat (näide)

call "C:\Program Files\Microsoft Visual Studio\2022\Community\Common7\Tools\VsDevCmd.bat"
cd %~dp0
msbuild ClickOnceBuildConfiguration.sln /t:Publish /t:CopyPublishedApplication /p:Configuration=Release /p:PublishUrl="publish\Release\\" /p:InstallUrl="\\xxxxServer\publish_Release\\" /p:ManifestKeyFile="ClickOnceMultipleInstallRelease.pfx" /p:ManifestCertificateThumbprint="Release" /p:ProductName="CliclOnce テスト Release システム" /p:PublisherName="Sorceryforce"

ManifestKeyFile Iga väärtus määrab erineva serdifaili. ManifestCertificateThumbprint Väärtus võib olla ükskõik milline, kuid lisage see kindlasti, sest rakendust ei saa teisena tuvastada, kui te seda ei pane.

Muide, kuna seekord on samasse keskkonda installitud kaks programmi, on lisatud parameetrid, et ProductName neid saaks eristada. PublisherName oma maitse järgi.

Küsimus

Pärast sisestamist käivitage iga partiifail ja avaldage see.

Kui xxxx.rakendus on teie avaldatud failis, avage see tekstiredaktoris ja veenduge, et sellel olekspublicKeyToken erinev väärtus.

Installida

Pärast avaldatud failide kopeerimist avalikku kausta käivitage nende setup.exe installimiseks .

Kui sisestate sertifikaadi väljastamise ajal, kuvatakse installimise ajal järgmine ekraan. Kui see on testsertifikaat, ei saa väljaandjat kinnitada, nii et installige see nii, nagu see on.

Esimene programm installiti ja käivitati.

Proovin teise installida.

Teine paigaldati ja käivitati.

Loomulikult töötavad mõlemad samal ajal.

ProductName Kuna see oli lisatud, kuvatakse see käivitusmenüüs eraldi.

Mõlemat näete ka rakenduste loendis.