Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A Visual Studióban a ClickOnce üzembe helyezése lehetővé teszi az alkalmazások frissítésének konfigurálását. Ha azonban speciális ClickOnce-telepítési funkciókat szeretne használni és testre szabni, akkor hozzá kell férnie az általa biztosított System.Deployment.Applicationüzembehelyezési objektummodellhez. Az API-kat speciális feladatokhoz használhatja System.Deployment.Application , például:
"Frissítés most" lehetőség létrehozása az alkalmazásban
Különböző alkalmazásösszetevők feltételes, igény szerinti letöltése
Közvetlenül az alkalmazásba integrált frissítések
Annak garantálása, hogy az ügyfélalkalmazás mindig naprakész.
Mivel az System.Deployment.Application API-k csak akkor működnek, ha egy alkalmazás a ClickOnce technológiával van üzembe helyezve, a hibakeresés egyetlen módja az alkalmazás ClickOnce használatával történő üzembe helyezése, csatolása, majd hibakeresése. Nehéz lehet elég korán csatolni a hibakeresőt, mert ez a kód gyakran akkor fut, amikor az alkalmazás elindul és végrehajtja a hibakereső csatolása előtt. A megoldás az, hogy a Visual Basic-projekteknél szüneteket (vagy leállításokat) helyez el a frissítés-ellenőrzési kód vagy az igény szerinti kód előtt.
Az ajánlott hibakeresési technika a következő:
Megjegyzés:
A ApplicationDeployment névtérben lévő System.Deployment.Application osztály és API-k nem támogatottak a .NET Core és a .NET 5 és újabb verziókban. A .NET 7-ben az alkalmazástelepítési tulajdonságok elérésének új módszere támogatott. További információ: A ClickOnce telepítési tulajdonságok elérése a .NET-ben. A .NET 7 nem támogatja az ApplicationDeployment metódusok megfelelőségét.
Mielőtt hozzákezd, győződjön meg arról, hogy a szimbólumfájlok (.pdb) és a forrásfájlok archiválva vannak.
Telepítse az alkalmazás 1. verzióját.
Hozzon létre egy új üres megoldást. A Fájl menüben válassza az Új, majd a Project lehetőséget. Az Új projekt párbeszédpanelen nyissa meg az Egyéb projekttípusok csomópontot, majd válassza ki a Visual Studio Solutions mappát. A Sablonok panelen válassza az Üres megoldás lehetőséget.
Adja hozzá az archivált forráshelyet az új megoldás tulajdonságaihoz. A Megoldáskezelőben kattintson a jobb gombbal a megoldáscsomópontra, majd válassza a Tulajdonságok lehetőséget. A Tulajdonságlapok párbeszédpanelen válassza a Forrásfájlok hibakeresése lehetőséget, majd adja hozzá az archivált forráskód könyvtárát. Ellenkező esetben a hibakereső megkeresi a elavult forrásfájlokat, mert a forrásfájl elérési útjai a .pdb fájlban vannak rögzítve. Ha a hibakereső elavult forrásfájlokat használ, egy üzenet jelzi, hogy a forrás nem egyezik.
Győződjön meg arról, hogy a hibakereső megtalálja a .pdb fájlokat. Ha telepítette a fájlokat az alkalmazással, a hibakereső automatikusan megkeresi őket. Mindig a kérdéses szerelvény mellett vizsgálja először. Ellenkező esetben hozzá kell adnia az archív elérési utat a szimbólumfájl-helyek listájához.
Nyissa meg az Eszközök (vagy hibakeresés) >beállítások panelt, és bontsa ki az Összes beállítás>hibakeresési>szimbólumok>keresési helye szakaszt . Elemek hozzáadása, módosítása vagy eltávolítása a Szimbólumfájl (.pdb) helylistájából .
Nyissa meg az Eszközök (vagy Hibakeresés) >beállítások párbeszédpanelt, és bontsa ki a Hibakeresési>szimbólumok szakaszt . Elemek hozzáadása, módosítása vagy eltávolítása a Szimbólumfájl (.pdb) keresési helyeinek listájából.
Hibakeressen a
CheckForUpdateés aDownload/Updatemetódushívások között.A frissítési kód például a következő lehet:
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click If My.Application.Deployment.IsNetworkDeployed Then If (My.Application.Deployment.CheckForUpdate()) Then My.Application.Deployment.Update() Application.Restart() End If End If End SubTelepítse a 2. verziót.
Próbálja meg csatolni a hibakeresőt az 1-es verziójú alkalmazáshoz, miközben letölt egy frissítést a 2- es verzióhoz. Másik lehetőségként használhatja a
System.Diagnostics.Debugger.Breakmetódust, vagy egyszerűen aStopVisual Basicben. Természetesen ezeket a metódushívásokat nem szabad éles kódban hagynia.Tegyük fel például, hogy Egy Windows Forms-alkalmazást fejleszt, és rendelkezik ehhez a metódushoz egy eseménykezelővel, benne a frissítési logikával. A hibakereséshez egyszerűen csatolja a gombot a gomb megnyomása előtt, majd állítson be egy töréspontot (győződjön meg arról, hogy megnyitja a megfelelő archivált fájlt, és ott állítja be a töréspontot).
IsNetworkDeployed A tulajdonsággal csak az alkalmazás üzembe helyezésekor hívhatja meg az System.Deployment.Application API-kat; az API-kat nem szabad meghívni a Visual Studióban végzett hibakeresés során.