
Ξέρει κανείς πώς να δημιουργήσετε μια δημοσίευση ClickOnce για ένα CD με το έργο δημοσιεύει στην MSBuild;


VS2008 έχει ένα «οδηγό δημοσιεύσει» με δημοσιεύει σε CD επιλογή κουμπί επιλογής. Εκδίδει ένα κλικ μία φορά την εγκατάσταση σε έναν τοπικό φάκελο που είναι κατάλληλο για καύση σε CD.


Παρακολουθούμε μια προγραμματισμένη MSBuild με βήματα μετά την επεξεργασία στην οποία το διαμορφώσετε και να το εγκαταστήσετε σε ένα δεδομένο περιβάλλον, και θα θέλαμε να έχουμε μια σεναρίων τρόπο για την παραγωγή ενός CD της εξόδου ClickOnce.


Έχω ήταν σε θέση να κάνουν αυτή τη διαδικασία το έργο για ένα web εγκατάσταση, και ένα μερίδιο αρχείο εγκατάστασης, αλλά φαίνεται σαν η «δημοσίευση οδηγός» έχει κάποιες κρυφές βήμα που δεν μπορώ να ανακαλύψετε.


Πάω από το μυαλό μου προσπαθώντας να συσχετίσει τις διάφορες ιδιότητες στα δημοσιεύει διαλόγους, ο οδηγός δημοσιεύει, MSBuild δημοσιεύει στόχο, mage.exe και mageui.exe. Μερικά στοιχεία έχουν το ίδιο όνομα, μερικές διαφέρουν μεταξύ τους διαλόγους και τις ιδιότητες, κάποια μπορεί να ρυθμιστεί σε μια περιοχή, αλλά όχι σε κάποιο άλλο.


Βλέπω ότι αυτοματοποίηση ClickOnce μπορεί να γίνει, αλλά συνολικά, φαίνεται να είναι μια τεχνολογία GUI, και scripting φαίνεται να πάει ενάντια σιτάρι του.


Νομοσχέδιο

 
Πώς μπορείτε να δημοσιεύσετε μια ClickOnce Κατασκευάστηκε σε ένα CD με MSBuild
==============================================================================



Λοιπόν, έχω απαντήσει δική μου ερώτηση.


Είναι ένα θέμα Http κωδικοποίηση!


Όταν δημοσιεύετε μια εφαρμογή, μπορείτε να καταλήξετε με μια δομή φακέλων όπως: C: \ MyApp \ Αρχεία Εφαρμογών \ έκδοση 1


Όταν αλλάξει το περιεχόμενο του που δημοσιεύθηκε app (όπως κάνετε όταν θέλετε να αντικαταστήσετε το αρχείο config), θα πρέπει να παραιτηθεί την εφαρμογή και την ανάπτυξη εκδηλώνεται.


Και όταν το κάνεις αυτό, MageUi.exe HttpEncodes η «Τοποθεσία» της application.manifest.


Μέχρι τώρα, η πρόδηλη την ανάπτυξη, λέει ότι η τοπική διαδρομή αρχείου σας στο δηλωτικό εφαρμογή είναι κάτι σαν: Εφαρμογή% 20Files \ myApp\_version \ myApp.exe.manifest


Και δεδομένου ότι ο δρόμος δεν υπάρχει, τα αίτιά της δήθεν CD εγκατάστασης που βασίζεται σε πραγματικά εγκαταστήσετε από τη διεύθυνση http: διακομιστή ενημέρωσης, αν υπάρχει, και να αποτύχει αν δεν το κάνει


Η δουλειά μας γύρω είναι η μετονομασία του «Αρχεία Εφαρμογών» σε «ApplicationFiles».


Απίστευτος...

 

Ακριβώς για να προσθέσει σε αυτό, φαίνεται να έχει κάτι να κάνει με τη λειτουργία MageUi στην έξοδο της βαθμίδας δημοσιεύει.


Αν έχω δημοσιεύσει με MSBuild από την γραμμή εντολών, που μοιάζει με:



```
msbuild  C:\myapp.vbproj /target:publish `
/property:PublishDir=c:\ClickOnce\ `
/property:SolutionDir=C:\trunk\myapp\ `
/property:TargetZone=LocalIntranet `
/property:MapFileExtensions=True `
/property:PublisherName='my publisher' `
/property:ProductName='myProduct' `
/property:BootstrapperEnabled=True `
/property:IsWebBootstrapper=False `
/property:GenerateManifests=True `
/property:ApplicationVersion=1.2.3.4 `
/property:Configuration=Debug `
/property:UpdateUrl=http://localhost/ClickOnce/ `
/property:UpdateEnabled=True `
/property:Install=True 

```

Στη συνέχεια, δημιουργήστε ένα φάκελο που είναι να εγκατασταθούν από ένα CD.


Όταν χειραγωγήσουν το αρχείο ρυθμίσεων, και να προσθέσετε επιπλέον παραγωγή από μια άλλη διαδικασία στο φάκελο δημοσιεύουν, και στη συνέχεια χρησιμοποιήστε MageUI για την ανάπλαση των εφαρμογών και την ανάπτυξη εκδηλώνεται, μπορώ να δημιουργήσω μια filebased εγκατάσταση που στην πραγματικότητα εγκαθιστά από το updateURL. Αν μου αποσυνδεθείτε από το διαδίκτυο, να πάρω ένα «Δεν είναι δυνατή η σύνδεση με τον απομακρυσμένο διακομιστή» εξαίρεση, έτσι ώστε όχι μόνο τον έλεγχο για ενημερώσεις, αυτό επιμένει σχετικά με την εγκατάσταση από τον web server, καθώς και.

 