Ho litigato con questo per un po 'di tempo. Ho un'app che utilizza un sacco di mem e in realtà trarrebbe vantaggio dall'essere LargeAddressAware.Come impostare LARGEADRESSAWARE per un'app ClickOnce?
problema in breve: Con il LAA-bandiera, l'applicazione non si avvierà.
risultati empirici:
1) Ho uno script di rilascio che gestisce l'intera pubblicazione ClickOnce, poi ri-segni gli eseguibili e le DLL, quindi ricrea i manifesti, segni si etc
2) l'esecuzione dello script mi dà un app che installa e funziona bene
3) l'aggiunta di questo alla post-generazione rompe l'app:
editbin /LARGEADDRESSAWARE <path>/obj/Publish/app.exe
(sì, lo so, abbiamo una configurazione di compilazione che si chiama Pubblica - idiota - ma funziona ...)
Il messaggio di errore che ottengo è:
attivazione di \ betabox \ appbeta \ app .application ha provocato un'eccezione. sono stati rilevati seguenti messaggi di guasto:
+ Forte firma nome non valido per questa assemblea app.exe.
Sia il mio il manifesto e l'exe è firmato da un codice firma cert valido. E lo script funziona bene quando la bandiera non viene impostata.
Ho provato anche senza il mio script, con solo il comando editbin nel post-build e la pubblicazione tramite VS - stesso errore.
Quindi - è del tutto impossibile pubblicare un app con LARGEADRESSAWARE impostato tramite ClickOnce?
Grazie!
Grazie! Ciò mi ha aiutato molto a cercare di capire perché la mia modifica "editbin" non è stata applicata durante l'implementazione di ClickOnce. Non mi sono reso conto che ClickOnce pubblica usando i file nella cartella ** obj ** e NON usa la cartella di output ** bin **. – Nick