C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

ログ内検索
  • キーワードを複数指定する場合は 半角スペース で区切ってください。
  • 検索条件は、(AND)=[A かつ B] (OR)=[A または B] となっています。
  • [返信]をクリックすると返信ページへ移動します。
キーワード/ 検索条件 /
検索範囲/ 強調表示/ ON (自動リンクOFF)
結果表示件数/ 記事No検索/ ON
大文字と小文字を区別する

全過去ログを検索

<< 0 >>
■16860  Re[4]: なぜゆえにプログラムは英語なのか?
□投稿者/ Jitta -(2008/04/11(Fri) 21:56:59)
記事No.16855 のレス /過去ログ34より / 関連記事表示
削除チェック/

■17477  Re[2]: 私の傑作プログラムは
□投稿者/ 特攻隊長まるるう -(2008/04/25(Fri) 11:51:01)
    No17475 (επιστημη さん) に返信
    見積りと比較して"最高"にオーバーしちゃった案件でいいんじゃない?w
    駄作の可能性も高いけどww

    金額的に○百万オーバーってのでも、比率で250%とかでも。
記事No.17468 のレス /過去ログ35より / 関連記事表示
削除チェック/

■21383  Re[2]: エラー処理  当該testboxにforcus
□投稿者/ 刈歩 菜良 -(2008/07/01(Tue) 14:57:41)
>
    例外が発生し得るのは

    > int age = int.Parse(textBox4.Text);

    だけなので、textBox4.Focus();でよいのではないでしょうか?
記事No.21379 のレス /過去ログ41より / 関連記事表示
削除チェック/

■73553  VB6のインストーラ
□投稿者/ さいとお -(2014/10/09(Thu) 16:12:56)

    分類:[VB6 以前] 

    Visual Studio Installer 1.1 を使わずに VB6 アプリのインストーラを
    作成する方法を調べています。何か情報をお持ちの方、いらっしゃいますか。

    やったこと:
    Visual Studio Installer 1.1 のプロジェクトを 変換ウィザードを使い
    Visual Studio 2008 形式に変換したところ、「正常に変換されました」と
    表示あれますが、ソリューションエクスプローラには「利用不可」と表示
    されて、VS2008 の環境でプロジェクトをビルドできません。

    Visual Studio 2008 にてセットアッププロジェクトを作成し、各 OCX の
    プロパティに COM や COMSelfReg を指定しましたが、Windows7(64bit)で
    コモンダイアログの表示部分で固まります。

    背景:
    2014/08/11 に公開された Windows の更新プログラム "KB2918614" を
    適用した Windows Vista、Windows 7、Windows 8, Windows 8.1 にて、
    "エラー 2709 オフライン参加完了情報が見つかりませんでした。" が
    発生して VB6 アプリをインストールできなくなったため。
親記事 /過去ログ123より / 関連記事表示
削除チェック/

■73554  Re[1]: VB6のインストーラ
□投稿者/ とっちゃん -(2014/10/09(Thu) 19:28:43)
>
    No73553 (さいとお さん) に返信
    > Visual Studio Installer 1.1 を使わずに VB6 アプリのインストーラを
    > 作成する方法を調べています。何か情報をお持ちの方、いらっしゃいますか。
    >
    InstallShield(Limited Editionを含む) や、WiX あたりが現役のインストーラ作成ツールになりますかね。


    > やったこと:
    > Visual Studio Installer 1.1 のプロジェクトを 変換ウィザードを使い
    > Visual Studio 2008 形式に変換したところ、「正常に変換されました」と
    > 表示あれますが、ソリューションエクスプローラには「利用不可」と表示
    > されて、VS2008 の環境でプロジェクトをビルドできません。
    >
    Visual Studio Installer(以下VSI) は、VSのセットアッププロジェクトの前身にあたる
    存在ですが、アドインのため、コンバート機能はないはずです。
    (VSのソリューションのコンバートだけが行われているはず)

    これは、VSIに限った話ではなく、ほかの製品でもアドインで追加できる
    プロジェクトならみな同様です(WiXや、InstallShield のVSプロジェクトなど)。

    > Visual Studio 2008 にてセットアッププロジェクトを作成し、各 OCX の
    > プロパティに COM や COMSelfReg を指定しましたが、Windows7(64bit)で
    > コモンダイアログの表示部分で固まります。
    >
    OCXは、自作のものですか?それとも、VB添付のものですか?
    もし、添付のものであれば、VB6のOCXのマージモジュールがあると思います。
    それを利用すれば、VSIのままでもインストールできると思うのですが...

    だめなのかなぁ?

    VB6の添付OCXのマージモジュールは、もしかするとInstallShield の
    プロ版とかなら添付しているかもしれません(わかりません)。

    試しに購入してみるというような金額ではないので(Expressとかじゃ
    おそらく実現できない)、無下にお勧めできるわけではありませんが。


    > 背景:
    > 2014/08/11 に公開された Windows の更新プログラム "KB2918614" を
    > 適用した Windows Vista、Windows 7、Windows 8, Windows 8.1 にて、
    > "エラー 2709 オフライン参加完了情報が見つかりませんでした。" が
    > 発生して VB6 アプリをインストールできなくなったため。
    >
    エラー 2709 は検索するといくつかヒットしますね。
    ただ、どこもKBをアンインストールする以外の選択肢で解決しているところは見かけませんが...
記事No.73553 のレス /過去ログ123より / 関連記事表示
削除チェック/

■73556  Re[2]: VB6のインストーラ
□投稿者/ さいとお -(2014/10/09(Thu) 21:43:50)
    No73554 (とっちゃん さん) に返信
    > ■No73553 (さいとお さん) に返信
    >>Visual Studio Installer 1.1 を使わずに VB6 アプリのインストーラを
    >>作成する方法を調べています。何か情報をお持ちの方、いらっしゃいますか。
    >>
    > InstallShield(Limited Editionを含む) や、WiX あたりが現役のインストーラ作成ツールになりますかね。

    情報ありがとうございます。

    >>やったこと:
    >>Visual Studio Installer 1.1 のプロジェクトを 変換ウィザードを使い
    >>Visual Studio 2008 形式に変換したところ、「正常に変換されました」と
    >>表示あれますが、ソリューションエクスプローラには「利用不可」と表示
    >>されて、VS2008 の環境でプロジェクトをビルドできません。
    >>
    > Visual Studio Installer(以下VSI) は、VSのセットアッププロジェクトの前身にあたる
    > 存在ですが、アドインのため、コンバート機能はないはずです。
    > (VSのソリューションのコンバートだけが行われているはず)
    >
    > これは、VSIに限った話ではなく、ほかの製品でもアドインで追加できる
    > プロジェクトならみな同様です(WiXや、InstallShield のVSプロジェクトなど)。

    セットアッププロジェクトを変換できない件、了解しました。

    >>Visual Studio 2008 にてセットアッププロジェクトを作成し、各 OCX の
    >>プロパティに COM や COMSelfReg を指定しましたが、Windows7(64bit)で
    >>コモンダイアログの表示部分で固まります。
    >>
    > OCXは、自作のものですか?それとも、VB添付のものですか?
    > もし、添付のものであれば、VB6のOCXのマージモジュールがあると思います。
    > それを利用すれば、VSIのままでもインストールできると思うのですが...

    アプリで使用しているOCXはコモンダイアログなど全てVB6付属のOCXです。
    VB6アプリからコモンダイアログを表示したとき、固まってしまいます。

    Windows7 の XP Mode では、基本動作に問題がなかったので、OCX周りの
    登録などが怪しいのかな と思っています。

    マージモジュールの登録や関連付けなどは、次のURLを参考に作業してみます。
    http://support.microsoft.com/kb/248023/ja

    > VB6の添付OCXのマージモジュールは、もしかするとInstallShield の
    > プロ版とかなら添付しているかもしれません(わかりません)。
    >
    > 試しに購入してみるというような金額ではないので(Expressとかじゃ
    > おそらく実現できない)、無下にお勧めできるわけではありませんが。

    >>背景:
    >>2014/08/11 に公開された Windows の更新プログラム "KB2918614" を
    >>適用した Windows Vista、Windows 7、Windows 8, Windows 8.1 にて、
    >>"エラー 2709 オフライン参加完了情報が見つかりませんでした。" が
    >>発生して VB6 アプリをインストールできなくなったため。
    > >
    > エラー 2709 は検索するといくつかヒットしますね。
    > ただ、どこもKBをアンインストールする以外の選択肢で解決しているところは見かけませんが...

    インストーラを更新すれば何とかなるかな と思い、模索していました。
記事No.73553 のレス /過去ログ123より / 関連記事表示
削除チェック/

■73604  Re[7]: VB6のインストーラ
□投稿者/ さいとお -(2014/10/15(Wed) 19:04:31)
    No73601 (魔界の仮面弁士 さん) に返信
    > ■No73600 (とっちゃん さん) に追記
    >>OCXを呼び出すと固まる。。。の部分が解決するかどうかは分かりませんよ。
    >
    > もしも Comdlg32.ocx の配置だけの問題なら、API (GetOpenFileName など)を
    > 直接呼び出すようなラッパークラスを用意し、それを ocx がわりに
    > 利用するようにしてみては如何でしょう。API 呼び出しでもフリーズを回避できない場合は
    > OCX の配布方法を模索したところで、問題を解決しない可能性が高そうです。

    いろいろと情報ありがとうございます。
    OCXの配布方法を模索しても、問題を解決しない可能性が高いと判断しました。

    Win7(64bit版)で試行した内容を列挙します。

    1."KB2918614" を削除して、OSをリブートする。
    2.Visual Studio Installer 1.1 で作成したインストーラで、 VB6アプリAをセットアップ。
      「ファイルを開く」コモンダイアログは正常に表示されたため、基本動作OKと判断した。
    3.OSを終了する。このとき "KB2918614" がインストールされる。
    4.OSを立ち上げなおし、Visual Studio 2008 で作成したインストーラで、VB6アプリBをセットアップ。
      OCXの登録は VB6アプリA で行われているはずなのに、コモンダイアログの呼び出しで固まる。
      (コモンダイアログが表示されない。10秒くらいでメッセージ「VB6アプリBは応答していません
       プログラムを閉じると、情報が失われる可能性があります。」が表示される。)
    5.エクスプローラを使い、VB6アプリB の実行ファイル・設定ファイルなどを VB6アプリA の
      セットアップ先にコピーし、VB6アプリA のセットアップ先フォルダから VB6アプリB を起動する。
      「ファイルを開く」コモンダイアログは正常に表示された。

    OCX の登録は VB6アプリA のセットアップで完了しているはずですから、セットアップ先の
    VB6アプリB が「ファイルを開く」コモンダイアログを表示できないのは、別の理由があると
    考えます。しかし、やるべき作業がわからないため、ギブアップになりそうです。


    補足:
    別の VB6アプリC では、「ファイルを開く」コモンダイアログを表示できず
    表示した後にキャンセルボタンを押したような動作になっていました。
    「表示しようとして固まる」か「表示できず、キャンセルボタンを押したような
    動作になる」のは、VB6でのコモンダイアログの使い方依存みたいです。
記事No.73553 のレス /過去ログ123より / 関連記事表示
削除チェック/

■73608  Re[8]: VB6のインストーラ
□投稿者/ とっちゃん -(2014/10/16(Thu) 10:49:30)
>
    No73604 (さいとお さん) に返信

    > 1."KB2918614" を削除して、OSをリブートする。
    > 2.Visual Studio Installer 1.1 で作成したインストーラで、 VB6アプリAをセットアップ。
    >   「ファイルを開く」コモンダイアログは正常に表示されたため、基本動作OKと判断した。
    > 3.OSを終了する。このとき "KB2918614" がインストールされる。
    > 4.OSを立ち上げなおし、Visual Studio 2008 で作成したインストーラで、VB6アプリBをセットアップ。
    >   OCXの登録は VB6アプリA で行われているはずなのに、コモンダイアログの呼び出しで固まる。
    >   (コモンダイアログが表示されない。10秒くらいでメッセージ「VB6アプリBは応答していません
    >    プログラムを閉じると、情報が失われる可能性があります。」が表示される。)
    > 5.エクスプローラを使い、VB6アプリB の実行ファイル・設定ファイルなどを VB6アプリA の
    >   セットアップ先にコピーし、VB6アプリA のセットアップ先フォルダから VB6アプリB を起動する。
    >   「ファイルを開く」コモンダイアログは正常に表示された。
    >
    4 で、そのまま VB6アプリAは起動するのでしょうか?
    原因切り分けができていないように見受けられます。

    まず、原因の切り分けとして、OCX の使い方あるいはOCXそのものの問題か
    インストール方法等の問題かの切り分けが一つ必要です。

    そのために行うことは、

    1.KB2918614 がない状態でアプリAをインストールして、起動、コモンダイアログのオープンまでを確認。
    2.再起動して KB2918614 が適用された状態で、「インストール済みの」アプリAを起動、コモンダイアログのオープンまでを確認。
    3.アプリAをアンインストールして、改めてアプリAのインストールして、起動、コモンダイアログのオープンまでを確認。

    の3パターンは最低でも必要です。

    それと、10月のWindowsUpdateで、KB2918614 が更新されているらしいです。
    インストールしようとするとエラーになる問題が修正されているらしいとのことですが
    私自身が確認したわけではないので正直詳細は分かってません。



    > 補足:
    > 別の VB6アプリC では、「ファイルを開く」コモンダイアログを表示できず
    > 表示した後にキャンセルボタンを押したような動作になっていました。
    > 「表示しようとして固まる」か「表示できず、キャンセルボタンを押したような
    > 動作になる」のは、VB6でのコモンダイアログの使い方依存みたいです。
    >
    表示できずキャンセルというのは、表示しないまま応答しなくなるということですか?
    それとも、一瞬表示してすぐに画面が消えてしまうのでしょうか?
記事No.73553 のレス /過去ログ123より / 関連記事表示
削除チェック/

■73609  Re[9]: VB6のインストーラ
□投稿者/ さいとお -(2014/10/16(Thu) 11:53:09)
    説明を端折ってしまい、混乱させてしまいました。申し訳ありません。

    No73608 (とっちゃん さん) に返信
    > ■No73604 (さいとお さん) に返信
    >
    >>1."KB2918614" を削除して、OSをリブートする。
    >>2.Visual Studio Installer 1.1 で作成したインストーラで、 VB6アプリAをセットアップ。
    >>  「ファイルを開く」コモンダイアログは正常に表示されたため、基本動作OKと判断した。
    >>3.OSを終了する。このとき "KB2918614" がインストールされる。
    >>4.OSを立ち上げなおし、Visual Studio 2008 で作成したインストーラで、VB6アプリBをセットアップ。
    >>  OCXの登録は VB6アプリA で行われているはずなのに、コモンダイアログの呼び出しで固まる。
    >>  (コモンダイアログが表示されない。10秒くらいでメッセージ「VB6アプリBは応答していません
    >>   プログラムを閉じると、情報が失われる可能性があります。」が表示される。)
    >>5.エクスプローラを使い、VB6アプリB の実行ファイル・設定ファイルなどを VB6アプリA の
    >>  セットアップ先にコピーし、VB6アプリA のセットアップ先フォルダから VB6アプリB を起動する。
    >>  「ファイルを開く」コモンダイアログは正常に表示された。
    >>
    > 4 で、そのまま VB6アプリAは起動するのでしょうか?

    4の状態で、VB6アプリA は起動できますし「ファイルを開く」コモンダイアログも表示できます。

    > そのために行うことは、
    >
    > 1.KB2918614 がない状態でアプリAをインストールして、起動、コモンダイアログのオープンまでを確認。
    > 2.再起動して KB2918614 が適用された状態で、「インストール済みの」アプリAを起動、コモンダイアログのオープンまでを確認。
    > 3.アプリAをアンインストールして、改めてアプリAのインストールして、起動、コモンダイアログのオープンまでを確認。
    >
    > の3パターンは最低でも必要です。

    改めて確認して、結果を報告させていただきます。

    > それと、10月のWindowsUpdateで、KB2918614 が更新されているらしいです。
    > インストールしようとするとエラーになる問題が修正されているらしいとのことですが
    > 私自身が確認したわけではないので正直詳細は分かってません。

    情報ありがとうございます。しかしWindows7(64bit版)で確認する限り、"エラー 2709 オフライン
    参加完了情報が見つかりませんでした。" が表示されインストールできない状況が続いています。

    >>補足:
    >>別の VB6アプリC では、「ファイルを開く」コモンダイアログを表示できず
    >>表示した後にキャンセルボタンを押したような動作になっていました。
    >>「表示しようとして固まる」か「表示できず、キャンセルボタンを押したような
    >>動作になる」のは、VB6でのコモンダイアログの使い方依存みたいです。
    >>
    > 表示できずキャンセルというのは、表示しないまま応答しなくなるということですか?
    > それとも、一瞬表示してすぐに画面が消えてしまうのでしょうか?

    コモンダイアログの表示ができずエラーになる。「キャンセルボタンが押されたときのように、
    エラー処理にジャンプしていた」ということです。後で、エラー情報を調べてみます。
記事No.73553 のレス /過去ログ123より / 関連記事表示
削除チェック/

■73610  Re[10]: VB6のインストーラ
□投稿者/ とっちゃん -(2014/10/16(Thu) 12:08:22)
>
    No73609 (さいとお さん) に返信
    > 改めて確認して、結果を報告させていただきます。
    >
    状況を情報共有したほうがよいのであれば、ぜひ報告をお願いします。


    >>それと、10月のWindowsUpdateで、KB2918614 が更新されているらしいです。
    >>インストールしようとするとエラーになる問題が修正されているらしいとのことですが
    >>私自身が確認したわけではないので正直詳細は分かってません。
    >
    > 情報ありがとうございます。しかしWindows7(64bit版)で確認する限り、"エラー 2709 オフライン
    > 参加完了情報が見つかりませんでした。" が表示されインストールできない状況が続いています。
    >
    ということは、今回の件は別の問題なのかもしれませんね。
    人づてに更新されたということを聞いただけなので。。。


    > コモンダイアログの表示ができずエラーになる。「キャンセルボタンが押されたときのように、
    > エラー処理にジャンプしていた」ということです。後で、エラー情報を調べてみます。
    >
    ダイアログの表示に失敗して、エラー終了したという形じゃないかと思います。
    思うだけなので、正直よくわかりませんけど。。。


記事No.73553 のレス /過去ログ123より / 関連記事表示
削除チェック/

■73615  Re[12]: VB6のインストーラ
□投稿者/ さいとお -(2014/10/17(Fri) 14:30:34)
    いろいろ確認したところ、セットアップファイルに加えていた OLEAUT32.dll OLEPRO32.dll が
    影響して、コモンダイアログを表示できなかったことが分かりました。改めて、配列形式の
    コモンコントロールの表示を確認したところ、正常に表示でき問題ありませんでした。

    その後、改めてセットアップモジュールを作成し、基本動作に問題ないことを確認しました。
    そのときの手順は次の通りです。

    0.開発環境として、Windows 7(64bit版)で動作する 二つの "XP Mode" を使用した。
        Visual Studio 6.0 と Visual Studio Installer 1.1 をインストールした環境。
        Visual Studio 2008 と Visual Studio 6.0 をインストールした環境。
        (Visual Studio Installer 1.1 と Visual Studio 2008 は共存できないみたい)
      MSIファイルをインストールする確認環境は、Windows 7(64bit版)。

    1.Visual Studio Installer 1.1 でセットアップモジュール(以下、MSIファイル)を作成する。
      (Visual Studio 6.0 と Visual Studio Installer をセットアップした XP Modeで作業)

    2.Webからダウンロードしたマージモジュール(以下、MSMファイル)を、Visual Studio 2008 を
      セットアップした XP Mode の"C:\Program Files\Common Files\Merge Modules"にコピーする。
      そして手順1で作成したMSIファイルを解凍して内部のファイルを取り出す。

      マージモジュールの取得先 http://www.microsoft.com/ja-jp/download/details.aspx?id=5883

    3.Visual Studio 2008 を起動しセットアップモジュールを作成する。
      指定するファイルは、手順2で取り出した内部ファイル全て。(ただしOLEAUT32.dll、OLEPRO32.dllを除く)

    4.Windows の更新プログラム "KB2918614" を適用した Windows 7(64bit版)にて、手順1で作成した
      MSIファイルをインストールする。途中で "エラー 2709" が発生してインストールに失敗する。

    5.その後、手順3で作成したMSIファイルをインストールする。正常にインストールできる。

    6.インストールしたアプリケーションの基本動作を確認したところ、特に問題なし。
      コモンダイアログなども正常に表示できる。

    最後になりますが、とっちゃんさん、魔界の仮面弁士さん、フォローありがとうございました。
記事No.73553 のレス / END /過去ログ123より / 関連記事表示
削除チェック/

■73645  Re[16]: VB6のインストーラ
□投稿者/ さいとお -(2014/10/21(Tue) 19:01:52)
    No73628 (とっちゃん さん) に返信
    > ■No73619 (さいとお さん) に返信
    >>手順3でコモンダイアログなどのOCXを含む全ファイル(OLEAUT32.dll、OLEPRO32.dllも含む)を
    >>選択すると、OCXはマージモジュールに置き換えてくれました。その後の確認(インストール操作、
    >>アプリの実行)では、正常に動いています。目的は達成できたので、解決扱いとさせて頂きます。
    >>
    > この手順3の作業を手順1の最初の段階でできませんか?という意味で聞いたんですが...
     (中略)
    > どちらの追加方法でも問題はありませんが
    > Visual Studio Installer でも同じように追加できると思います。
    > これができれば手順1と手順3で同じインストーラを2種類作る必要がなくなりますよね?

    Visual Studio Installer でセットアッププロジェクトを作った場合、
    次の環境でインストールできません。

      2014/08/11 に公開された Windows の更新プログラム(KB2918614) を
      適用した Windows Vista、Windows 7、Windows 8, Windows 8.1 にて、
      "エラー 2709 オフライン参加完了情報が見つかりませんでした。" が
      発生して VB6アプリ をインストールできません。

    そのような環境でもセットアップ可能なインストーラを作るため、
    Visual Studio 2008 でセットアッププロジェクトを作成したのです。
    Visual Studio 2008 で作成したインストーラは、次の環境にインストールでき、
    アプリの基本的な動作もOKでした。
      Net Frameworkを入れていないWindows XP(32bit)
      Windows の更新プログラム(KB2918614) を適用した Windows 7(64bit)

    丁寧な解説、ありがとうございました。
記事No.73553 のレス / END /過去ログ123より / 関連記事表示
削除チェック/

■91861  Re[11]: C++からVBへの変換
□投稿者/ えん -(2019/08/07(Wed) 18:47:14)
    上で述べたように
    nは4のべき乗ですので
    8は来ないはずですが・・
記事No.91843 のレス /過去ログ158より / 関連記事表示
削除チェック/

■91872  Re[12]: C++からVBへの変換
□投稿者/ 魔界の仮面弁士 -(2019/08/08(Thu) 00:00:29)
    No91861 (えん さん) に返信
    > nは4のべき乗ですので
    > 8は来ないはずですが・・
    
    あぁ、なるほど。
    
    もしも n が任意の自然数だった場合には
    > For g As Integer = 1 To CInt(Math.Log(n, 4))
    ではなく
     For g As Integer = 1 To CInt(Int(Math.Log(n, 4)))
    になるかも。
    
    
    
    ■No91862 (えん さん) に返信
    > すいません、あと
    > 
    >     i = 0;
    >     for (j = 1; j < n - 1; j++) {
    >         for (k = n >> 1; k > (i ^= k); k >>= 1);
    >         if (j < i) {
    >             x0r = ar[j];
    >             x0i = ai[j];
    >             ar[j] = ar[i];
    >             ai[j] = ai[i];
    >             ar[i] = x0r;
    >             ai[i] = x0i;
    >         }
    >     }
    
    
    こうかな…? (未検証)
    
    
    Dim i As Integer = 0
    For j As Integer = 1 To n - 2
        ' Dim k As Integer = n >> 1
        Dim k As Integer = n \ 2
    
        i = i XOr k
        While k > i
            ' k >> = 1
            k \= 2
            i = i XOr k
        End While
    
        If j < i Then
           Dim swap_ar = ar(j)
           ar(j) = ar(i)
           ar(i) = swap_ar
    
           Dim swap_ai = ai(j)
           ai(j) = ai(i)
           ai(i) = swap_ai
        End If
    Next
記事No.91843 のレス /過去ログ158より / 関連記事表示
削除チェック/

■95012  Re[4]: batでのネットワーク接続名取得について
□投稿者/ tetris -(2020/06/11(Thu) 16:38:39)
    No95011 (魔界の仮面弁士 さん) に返信

    > その検索条件には、IP アドレスの部分も含まれていますか?
    >
    > "(優先)" という文字列だけだと、下記のように
    > 複数のアダプターが列挙される可能性がありそうです。
    >
    >
    > イーサネット アダプター ローカル エリア接続:
    > IPv4 アドレス . . . . . . . . . . . .: 10.12.34.56(優先)
    >
    > イーサネット アダプター vEthernet (Default Switch):
    > IPv4 アドレス . . . . . . . . . . . .: 172.16.78.90(優先)
    > リンクローカル IPv6 アドレス. . . . .: 2001:db8::2%22(優先)
    >
    >
    >
    >>for /f "tokens=1,2,*" %%a in ('ipconfig /all ^| find "イーサネット アダプター"') do (
    >
    > wmic から得られないかな…と思ったのですが、IPAddress が配列を返すのが難点。
    > (WQL は配列型に対するクエリをサポートしてない)
    >
    > wmic NIC where NetEnabled=TRUE get DeviceID, InterfaceIndex, NetConnectionID
    > wmic NICConfig where IPEnabled=TRUE get InterfaceIndex, IPAddress
    >
    > 配列を処理するために、PowerShell か VBScript を併用するか、
    > 標準出力を文字列として切り出して判断するか…。
    >
    >
    >
    >>ipconfig /all で表示される項目の中で 192.168.1.100(優先)
    >
    > IP アドレス固定の問い合わせパターン。
    >
    > =========
    >
    > REM @ECHO OFF
    > SET IP=192.168.1.100
    > SET PSCMD="Get-CimInstance Win32_NetworkAdapter -Filter NetEnabled=TRUE | select -Property NetConnectionID, @{name='IP'; expression={(Get-CimAssociatedInstance -Association Win32_NetworkAdapterSetting $_).IPAddress}} |?{[Array]::IndexOf($_.IP,'%IP%') -ne -1}|%%{$_.NetConnectionID}"
    > FOR /F "USEBACKQ DELIMS=" %%A IN (`PowerShell.exe -Command %PSCMD%`) DO SET ADAPTER=%%A
    > ECHO [%ADAPTER%]


    引用めちゃめちゃで申し訳ないです。ちょっといただいた意見を参考に考え直してみます。
    魔界の仮面弁士さん、本当にいろいろ詳しいのですね。いつも助かっております。
記事No.95008 のレス / END /過去ログ164より / 関連記事表示
削除チェック/



<< 0 >>

パスワード/

- Child Tree -