ciao,
quando pubblichi con Clickonce, hai tutto quello che riguarda la pubblicazione nelle proprietà della classe "ApplicationDeployment", ti basta solo controllare che sia effettivamente stata distribuita (e quindi installata) tramite ClickOnce.
In poche parole ti basta un codice di questo tipo:
...
if (ApplicationDeployment.IsNetworkDeployed)
return ApplicationDeployment.CurrentDeployment.CurrentVersion.ToString();
...
io ad esempio, in maniera 1po grezza ma efficace, ho usato una proprietà:
public static string Versione
{
get {
if (ApplicationDeployment.IsNetworkDeployed)
return ApplicationDeployment.CurrentDeployment.CurrentVersion.ToString();
else
return Assembly.GetExecutingAssembly().ToString();
}
}
che uso sia per quelle Clickonce che no, e serve solo come "debug", ma puoi ovviamente raffinare andando a vedere le proprietà complete tipo "CurrentVersion.Major/Minor/Build" etc...
ciao.
Matteo Raumer
[MCAD .net]
http://blogs.dotnethell.it/freeteo