Ho un servizio WCF che sto ospitando come servizio Windows. Normalmente vado al prompt dei comandi VS e installo il servizio usando installutil.exe, quindi modifica l'indirizzo di base del servizio in app.config in base al nome del computer su cui lo sto installando ed eseguo il servizio.Inno Setup Modifica il file app.config quando si esegue setup.exe
indirizzo di base è questa:
<endpoint address="http://MACHINE_NAME/NFCReader/" binding="webHttpBinding"/>
modifico il MACHINE_NAME nel file app.config.
Voglio usare inno setup per fare lo stesso per me.
Quello che voglio è quando l'utente esegue il file setup.exe per installare il servizio, voglio chiedere all'utente l'indirizzo di base del servizio e usare quell'indirizzo per ospitarlo. Non sono in grado di capire se è possibile O come farlo.
Qualsiasi aiuto per favore? Grazie in anticipo. :)
Sì, ad esempio utilizzando un parser XML. Se hai familiarità con MSXML, potresti seguire ['questo post'] (http://stackoverflow.com/a/11254218/960757). È abbastanza semplice estenderlo alle tue esigenze. Un parser XML veloce per InnoSetup è presente nell'elenco delle mie attività (ma richiederà del tempo). – TLama
Un parser/scrittore XML è una complicazione inutile se si dispone di una stringa di marcatore univoca nota in un file modello che è possibile sostituire (simile al codice precedente). Tuttavia, è una buona idea se è necessario essere in grado di modificare i file in cui non è possibile inserire tali marcatori (ad esempio se è necessario aggiornare un file già installato sul sistema dell'utente). Si noti tuttavia che il codice sopra ha un bug: 'DateTime' viene trattato come un valore ISPP invece di una funzione di codice. Dovrebbe essere chiamato direttamente, non tramite 'ExpandConstant'. – Miral
corretto. Grazie per il consiglio. – RobeN