トップ回答者
すべての返信
-
かず boo さん、こんにちは。
かずboo さんからの引用 ClickOnceで発行する場合のデザイナーのページの下にある発行するバージョンの部分の メジャー、マイナー、ビルド、リビジョンの値を 発行されたアプリケーションから取得するには どうすれば良いのでしょうか? System.Deployment.Application.ApplicationDeployment クラスの CurrentDeployment 静的メソッドより、
ApplicationDeployment クラスのインスタンスを取得します。
あとは、このインスタンスより CurrentVersion プロパティを参照します。 -
じゃんぬねっとさん アドバイスありがとうございます
>System.Deployment.Application.ApplicationDeployment クラスの CurrentDeployment 静的メソッドより、
>ApplicationDeployment クラスのインスタンスを取得します。
あとは、このインスタンスより CurrentVersion プロパティを参照します。まだ あまり意味がわかりませんので
MSDNより
ここかな? というところから
Private Function CheckForUpdateDue() As Boolean
Dim isUpdateDue As Boolean = False
If (ApplicationDeployment.IsNetworkDeployed) Then
Dim AD As ApplicationDeployment = ApplicationDeployment.CurrentDeployment
Dim updateInterval As TimeSpan = DateTime.Now - AD.TimeOfLastUpdateCheck
If (updateInterval.Days > 3) Then
isUpdateDue = True
End If
End If
CheckForUpdateDue = isUpdateDue
End Functionこのコードを改造すればよいのかな? と思い
まずは このままコピーしたのですが
ApplicationDeploymentのところで「型’ApplicationDeployment’が定義されていません」と出てしまいます。
どこで 定義すればよいのでしょうか?
-
かず boo さん、
かずboo さんからの引用 まだ あまり意味がわかりませんので
:
このコードを改造すればよいのかな? と思い私は、名前空間もすべて書かせて頂いております。
サンプルに頼らずとも、先の私の投稿どおりに実装すれば良いと思います。
また、これは、1 ~ 2 行で解決しますので、サンプルから追った方がつらいと思います。"意味がわからない" のは、一体どこなのかを指し示したほうが、かず boo さんのためにもなるのではないでしょうか?
意味がわからない状態でサンプルをコピペしても、それは根本的な解決になりません。
逆に、意味がわかっていれば、自力でも実装ができますし、サンプルを見ても普通に理解できるでしょう。 -
じゃんぬねっとさん ありがとうございました
Imports System.Deployment.Applicationとインポートすることで
前記のエラーが出なくなりましたので 再度 教えて頂いた通りにこうかな と思うように書いてみましたところ バージョンが表示できるようになりました
もっと 基本から勉強しないと せっかく教えで頂いている事がそのまま理解できないという 本当に恥ずかしい状態です
どうも ありがとうございました。
Dim cd As ApplicationDeployment = ApplicationDeployment.CurrentDeployment
Dim vv As String = cd.CurrentVersion.ToString()
LabVer.Text = vv -
かず boo さん、
かずboo さんからの引用 もうひとつ 甘えてよろしいか?
バージョンの中のメジャー、マイナー、ビルド、リビジョンのうちリビジョンについては この値を元に アップデートを確認しているのかな? という感じで なんとなく分かるのですがあとの メジャー、マイナー、ビルドに関しては 自分で分かりやすいように 値を設定すれば良いのですか?メジャー、マイナー、ビルドについては、一般的な定義があります。
参考にしてください。