- PR -

VB.NETで作成したアプリの展開方法について

投稿者投稿内容
sig
会議室デビュー日: 2008/06/11
投稿数: 9
投稿日時: 2008-07-03 18:10
VB.NETアプリの展開について質問させていただきます。

VB.NET2005で作成したメニューのEXEと、各業務のDLLで構成したWindowsアプリケーションを作成しました。
メニューはDLLの業務を起動ドライバを経由して指導しますので、各DLLはメニューのソリューション配下にはいません。
ですので、ちょっと調べたClickOnceが使えないと思います。

最初の展開では各クライアントにインストーラーで配布しますが、その後、修正が入ったときに対象のDLLだけ配布したいと思っています。
配布方法はなるべく自動にしたいのですが、ClickOnce以外でこれが実現できる案は何かないでしょうか?

良いお知恵があるかた、よろしくお願いいたします。
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2008-07-03 19:04
引用:

sigさんの書き込み (2008-07-03 18:10) より:

配布方法はなるべく自動にしたいのですが、ClickOnce以外でこれが実現できる案は何かないでしょうか?


大手のパッケージ ソフトでやっているような起動時に最新版の確認をして自動配布みたいなイメージでしょうか。

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
sig
会議室デビュー日: 2008/06/11
投稿数: 9
投稿日時: 2008-07-03 19:16
じゃんぬねっとさん
ありがとうございます。

起動時に最新版の確認をして自動配布

まさにその通りです。
イメージはwindows updateとでも申しましょうか。
クライアントは300台ほどあるのと、オペレータはシステムに詳しくないようです。
かずくん
ぬし
会議室デビュー日: 2003/01/08
投稿数: 759
お住まい・勤務地: 太陽系第三惑星
投稿日時: 2008-07-03 20:15
mage (or mageui)を使って手動でパッケージングすれば、clickonceも可能だと思うよ。

入り口はここかな?
Windows フォーム アプリケーションの ClickOnce 配置(microsoft.com)
チュートリアル : ClickOnce アプリケーションを手動で配置する(microsoft.com)
とっちゃん
大ベテラン
会議室デビュー日: 2005/07/19
投稿数: 203
投稿日時: 2008-07-04 12:34
どこまで開発コスト(金額面、人的な面)がかけられるかにもよりますが

WindowsInstaller でもその手のことはできますよ。
WiX(3.0系)なら、ClickOnce 風味な配布ができるものもあります。
RSSを使って自動配信もできるらしいです。
#日本語に対応してるかはわかりませんが
#マルチリンガルでプロジェクトが動いてるので対応してると思います。

あとは、配布の際にどういう経路が利用可能か?ですね。
それなりに太い回線でのLAN/WAN接続なら
msp でも問題ないでしょうけど、アナログモデムで接続とかになると
一ビットでも少なく!という世界ですし。

VSセットアップでも別ソリューションのファイルを対象にはできますが
こいつの場合は、アップデート時にそれだけというのがないので
ちょっと用途的には厳しいですね。


余談
ClickOnce は配布の方法によっては実行制限が働きます。
初回の配布はいいけど2回目以降が大問題ということになりかねないので注意が必要です。
詳しくは
http://msdn.microsoft.com/ja-jp/library/76e4d2xw(VS.80).aspx
を参照のこと。
rucio
ベテラン
会議室デビュー日: 2002/11/27
投稿数: 98
投稿日時: 2008-07-04 13:14
>メニューはDLLの業務を起動ドライバを経由して指導しますので、各DLLはメニューのソリューション配下にはいません。
>ですので、ちょっと調べたClickOnceが使えないと思います。
使ってなくても配下に加えて参照してしまえばどうですか?
技術的にはすべてをソリューション配下に含めることは可能ですし、メニューが参照することも可能です。

>配布方法はなるべく自動にしたいのですが、ClickOnce以外でこれが実現できる案は何かないでしょうか?
とありますが、やはりClickOnceが便利だと思いますから、まずはこの方向を検討されてはどうでしょうか?
sig
会議室デビュー日: 2008/06/11
投稿数: 9
投稿日時: 2008-07-04 17:52
皆さんありがとうございます。

>かずくんさん

mage (or mageui)に興味をそそられました。
こちらを挑戦してみたいと思います。

>とっちゃんさん

WindowsInstallerでも出来るんですか?ちょっと想像がつかないです。
RSSというのも、実際どうやってやるのでしょう?

回線は社内LANですので、あまり容量については気にしておりません。

>rucioさん

やはり全てをソリューション配下に含めたほうが良いですか。
ただ、かなり本数の多いプロジェクトですので、DLLの数は200くらいになってしまうんです。
そうなりますと、ビルドするだけでもかなり時間がかかりそうですよね。。。
とっちゃん
大ベテラン
会議室デビュー日: 2005/07/19
投稿数: 203
投稿日時: 2008-07-04 20:13
引用:

sigさんの書き込み (2008-07-04 17:52) より:
WindowsInstallerでも出来るんですか?ちょっと想像がつかないです。
RSSというのも、実際どうやってやるのでしょう?

回線は社内LANですので、あまり容量については気にしておりません。



RSSにアップデート情報を書いておくと、それで更新のお知らせができるらしいです。
なにせ、出来た当初にちょっと見ただけという程度なんでよくわかってないんですけどね。


ボリュームがどのくらいなのかよくわからんのですが(DLLが別ソリューションで200あるんですか?)
DLL200本はちょっと現実的ではないような...

ソリューションの方はファイル参照にしておけば、都度ビルドはなくなりますので
問題はないといえますけど...なんか規模が想定できない。

で ClickOnce ですが、ローカルなファイル操作とかはあるんでしょうか?
もしあるのであれば、初回はCDとかから入れないとアクセス制限入りますよ。
#共有フォルダからだとイントラ制限受けるのでスタンドアロン系には向かない

社内LANであれば、配布範囲が社内だけですので、
ActiveDirectory を用意している環境なら、そこで自動配信という手段もあります。
これなら、ログオン時に自動的に処理してくれるという選択肢が取れますし、
通常のインストーラ同様、マシンアカウントでインストールができます。
#必要かどうかはわかりませんけど

これなら、アプリケーションは関与せず、ログオン時に管理サイドで更新を
行えるのでかなり楽ができますし、インストーラ(更新も含め)もVSセットアップで
いけるのでそれほど厳しいということもないと思いますよ。

スキルアップ/キャリアアップ(JOB@IT)