[前の記事]« 指定したサイズ未満のファイルを一括削除するには
[次の記事]イベントログをクリアする方法(WSH) »

関連オンラインソフト配布サイト:
Vector>ダウンロード(top) |>MS-DOSまたは汎用 | >WindowsVista/XP/2000/NT

▲カテゴリー「こんなことは可能ですか?」索引へ

WinXP起動時にバッチ処理でLANポートを殺すことはできますか?

1053.
WinXP起動時にLANポートを殺す方法
2006年03月07日(火) 19時52分
Gさん◆7llOaog=
●WindowsXpPro

始めまして。
今回皆さんのお力をお借りしたくて投稿させていただきます。
XPの起動時にLAN1,2のポートをDisableにして、あるプログラムを起動後、LAN1,2のポートをeableに変更したいと思っております。

バッチファイルで制御可能でしょうか?
また、もし可能であればどういった文面を書けばよいかお教えいただけませんでしょうか。

宜しくお願いいたします。
1054.
Re:WinXP起動時にLANポートを殺す方法
2006年03月08日(水) 19時18分
otn
>XPの起動時にLAN1,2のポートをDisableにして、あるプログラムを起動後、LAN1,2のポートをeableに変更したいと思っております。

スクリプトで起動時に無効にするのは無理だと思います。スクリプトが動く前に有効になっちゃう。シャットダウン前に無効にしておかないと。シャットダウン前にプログラムやバッチを起動するフリーソフトが必要です。

案1:netshの利用(思いつき)
現状で、netsh interface dump > enable.txt とネットワーク設定を保存します。
次にTCP/IP設定に不正なアドレス・ネットマスクを設定して通信不能にします。
そして、netsh interface dump > disable.txt とその状態を保存。

有効にしたいとき:
netsh < enable.txt

無効にしたいとき:
netsh < disable.txt

案2:VBScriptの利用(実績あり)
自宅PCにサンプルがあります。今日はちょっと時間がなさそう。もし案1の思いつきでうまくいかなければ再度質問ください。

1055.
Re:WinXP起動時にLANポートを殺す方法
2006年03月08日(水) 19時32分
Gさん◆7llOaog=
otnさん

ご回答ありがとう御座います。
otnさんのご提案ですが、不正なアドレスなどで通信を出来なくするだけではだめなんです。

また、起動時enableでも問題はありません。
ただ、Win起動後にdisableに出来たら良いだけなので。

やはりVBとかで制御するしかないのでしょうか?
よろしくお願いします。
1056.
Re:WinXP起動時にLANポートを殺す方法
2006年03月09日(木) 01時13分
otn
>otnさんのご提案ですが、不正なアドレスなどで通信を出来なくするだけではだめなんです。
>
>また、起動時enableでも問題はありません。
>ただ、Win起動後にdisableに出来たら良いだけなので。

前提の理由が読めないので、差し支えない範囲で、何故そんな前提になるのか教えてください。

一旦無効にして2秒後に有効にするvbsサンプルです。
最後のところをどっちか削ればいいでしょう。
どこから取ってきたか覚えてないのですが、キーワードで検索すると2chがひっかかりますね。でも2chは読んでないので別のところからだと思いますが思い出せません。
WSH Lab BBSで検索しても引っかからないので違うし。

Const ssfCONTROLS = 3 
Const sConPaneName    = "ネットワーク接続"
Const sConnectionName = "ローカル エリア接続" 
Const sDisableVerb    = "無効にする(&B)" 
Const sEnableVerb     = "有効にする(&A)" 

set shellApp = createobject("shell.application") 
set oControlPanel = shellApp.Namespace(ssfCONTROLS) 
set oNetConnections = nothing 
for each folderitem in oControlPanel.items 
  if folderitem.name = sConPaneName then 
    set oNetConnections = folderitem.getfolder: exit for 
  end if 
next 
if oNetConnections is nothing then 
  wscript.quit 
end if 
set oLanConnection = nothing 
for each folderitem in oNetConnections.items 
  if lcase(folderitem.name) = lcase(sConnectionName) then 
    set oLanConnection = folderitem: exit for 
  end if 
next 
if oLanConnection is nothing then 
  wscript.quit 
end if 

for each verb in oLanConnection.verbs 
  if verb.name = sDisableVerb then 
    verb.Doit
    WScript.Sleep 2000
  end if 
next 
for each verb in oLanConnection.verbs 
  if verb.name = sEnableVerb then 
    verb.Doit
    WScript.Sleep 2000
  end if 
next 

1057.
Re:WinXP起動時にLANポートを殺す方法
2006年03月09日(木) 14時49分
Gさん◆7llOaog=
otnさん
PGまでご教授頂き、ありがとう御座います。

理由ですが、一番初めにも記載しておりましたが、起動させたいアプリの問題なんです。
スタートアップや、Win起動後に立ち上げてもNICの認証が出来ずアプリが正常に動きません。
NICを一度無効にしてからそのアプリを立ち上げ、NICを有効にしなければいけないというバグ(あくまでもそういう仕様と言ってる)がある為です。

で、簡単にDOSのバッチファイルで制御できたら良いのにと思い、こちらの掲示板に書き込みをさせていただきました。

以上が理由です。
バッチファイルで制御できないとなると、ここの板の目的から離れると思いますので、一度完了とさせていただきたいと思います。

本当にありがとう御座いました。

1053.WinXP起動時にLANポートを殺す方法 Gさん◆7llOaog= 06/03/07(火) 19:52
1054.Re:WinXP起動時にLANポートを殺す方法 otn 06/03/08(水) 19:18
1055.Re:WinXP起動時にLANポートを殺す方法 Gさん◆7llOaog= 06/03/08(水) 19:32
1056.Re:WinXP起動時にLANポートを殺す方法 otn 06/03/09(木) 01:13
1057.Re:WinXP起動時にLANポートを殺す方法 Gさん◆7llOaog= 06/03/09(木) 14:49
 
 


カテゴリー「こんなことは可能ですか?」索引へ

 

カテゴリー一覧

FPCU/FPCDIY QUICK LINK online
この上の各ジャンル名をクリックすると、下のウィンドウが切り替わります▼


=リンク集のインデックスはこちら=

資料書籍

About

2006年03月07日 11:02に投稿されたエントリーのページです。

ひとつ前の投稿は「指定したサイズ未満のファイルを一括削除するには」です。

次の投稿は「イベントログをクリアする方法(WSH)」です。

他にも多くのエントリーがあります。メインページアーカイブページも見てください。

This site is powered by Six Apart
Movable Type 3.33-ja
このブログについて | 運営:有限会社メディアポート