tagCANDY CGI VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板) [ツリー表示へ]   [Home]
一括表示(VB.NET VB2005)
タイトルapp.configの変更方法
記事No7762
投稿日: 2008/07/02(Wed) 14:33
投稿者AMI
いまVB2005proで開発を行っております。

現在の状況:
1.サーバーエクスプローラで、新しい接続を作成。
2.データメニューより、新しいデータソースの追加。
3.データソースより、テーブルをフォームにドラッグ。
 (データセット、データバインディングソース、データアダプタが自動生成)
4.データバインディングソースフォームのデザイン部にドラッグして、表示させています。
そこで、app.configの内容にデータパスがあるのですが、これを動的に変更はできるのでしょうか?
app.configの内容
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <configSections>
    </configSections>
    <connectionStrings>
        <add name="Kubun.My.MySettings.mgenkaConnectionString" connectionString="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\data\AccessDB.mdb"
            providerName="System.Data.OleDb" />
    </connectionStrings>
    <system.diagnostics>
        <sources>
            <!-- このセクションでは、My.Application.Log のログ構成を定義します。 -->
            <source name="DefaultSource" switchName="DefaultSwitch">
                <listeners>
                    <add name="FileLog"/>
                    <!-- アプリケーション イベント ログに書き込むには、以下のセクションのコメントを解除します -->
                    <!--<add name="EventLog"/>-->
                </listeners>
            </source>
        </sources>
        <switches>
            <add name="DefaultSwitch" value="Information" />
        </switches>
        <sharedListeners>
            <add name="FileLog"
                 type="Microsoft.VisualBasic.Logging.FileLogTraceListener, Microsoft.VisualBasic, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL"
                 initializeData="FileLogWriter"/>
            <!-- アプリケーション イベント ログに書き込むには、以下のセクションのコメントを解除して、APPLICATION_NAME をアプリケーション名に置き換えます -->
            <!--<add name="EventLog" type="System.Diagnostics.EventLogTraceListener" initializeData="APPLICATION_NAME"/> -->
        </sharedListeners>
    </system.diagnostics>
</configuration>

上記部分の        <add name="Kubun.My.MySettings.mgenkaConnectionString" connectionString="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\data\AccessDB.mdb"
のデータパスを変更したいのです。

ちなみに、これをEXEで配布する場合、「Kubun.exe.config」というconfigファイルができるのですが、これをEXEの直下におかないと起動しません。
(おそらくデータバインドのパス先情報が欠かれているため)
これは、EXEをたとえば10個配布する場合(プロジェクトを分けて作成した場合)は、10個分のconfigファイルが必要と考えてよいのでしょうか?
VB6.0の場合は、EXEの数に関係なく、1個のINIファイルなどにもたせて、全てそこを参照するようにしておりました。
一番のネックは、データバインドのパス先情報をconfigにもっているせいかとおもいますが、これはVB2005では、変更できないですよね?(ウイザードより自動生成しているため)

以上の件宜しくおねがいします。

[ツリー表示へ]
タイトルRe: app.configの変更方法
記事No7763
投稿日: 2008/07/02(Wed) 18:10
投稿者やじゅ
>10個分のconfigファイルが必要と考えてよいのでしょうか?
作り方によるけど、必要無いなら配布しなくてもいいでしょう。
connectionStringの部分は別途外部ファイルにしてプログラム
から読み出すようにすればいいかな。

インストーラーとConfigファイル
http://gmt9.cocolog-nifty.com/blog/2007/03/config_7553.html
ソリューションで共通の設定ファイルを持つ方法は?
http://www.microsoft.com/japan/msdn/community/gdn/ShowPost-36025.htm

[ツリー表示へ]
タイトルRe^2: app.configの変更方法
記事No7765
投稿日: 2008/07/03(Thu) 13:59
投稿者AMI
> >10個分のconfigファイルが必要と考えてよいのでしょうか?
> 作り方によるけど、必要無いなら配布しなくてもいいでしょう。
> connectionStringの部分は別途外部ファイルにしてプログラム
> から読み出すようにすればいいかな。
>
> インストーラーとConfigファイル
> http://gmt9.cocolog-nifty.com/blog/2007/03/config_7553.html
> ソリューションで共通の設定ファイルを持つ方法は?
> http://www.microsoft.com/japan/msdn/community/gdn/ShowPost-36025.htm
やじゅさん
早速のお返事ありがとうございました。
サイトで確認したところconfigファイルの概要がわかりました。
それと質問板で
http://hanatyan.sakura.ne.jp/vbnetbbs/wforum.cgi?no=7743&reno=no&oya=7743&mode=msgview&page=0
ちょうど似たような内容だったので、みてみたら、私のやりたいことが
のっており、解決しました。
ありがとうございました。

[ツリー表示へ]