[前の記事]« SETUPディスクのDOSプロンプトから長い名前のファイルをコピーしたい
[次の記事]別コンピュータへのファイルコピー(XCOPY)をATコマンドで実行したい »

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

▲カテゴリー「NET CONFIG」索引へ

Win95でのコンピュータ名の取得方法


719) Win95でのコンピュータ名の取得方法 パトレーゼ 2002/09/30(月) 18:26


WINDOWS95でコンピュータ名を自動的に取得して、バッチの中で参照する方法を教えて下さい。

なるべくなら、フリーソフトを実行させて取得する事をせずに取得できればベストですが、恐らくそんな訳にはいかないような気がします。ソフトを実行させる場合はメモリの負担が軽いのがいいいのですが…。
お奨めの方法を教えてくださいませ。


720) Re:Win95でのコンピュータ名の取得方法 じゃく 2002/09/30(月) 19:31


パトレーゼさんこんにちは。

>WINDOWS95でコンピュータ名を自動的に取得して、バッチの中で参照する方法を教えて下さい。

これでどうでしょうか。当方Win95環境が手近にないので、98SEで動作確認しました。(ただしコンピュータ名の先頭に\\がついてしまいます。仕様です^^)

-----ファイル名 win95.bat
if "%1"=="next" goto next
echo set hostname=%%1 > コンピュータ名.bat
echo %0 next >> コンピュータ名.bat
net config | find "コンピュータ名" > tmp.bat
tmp.bat
:next
echo コンピュータ名は %hostname% です
del tmp.bat
del コンピュータ名.bat

#前回の問い合わせの件はうまくいきましたか?
#よかったらおしえてくださいませ。


728) Re2:Win95でのコンピュータ名の取得方法 リカルド 2002/10/01(火) 17:15


>#前回の問い合わせの件はうまくいきましたか?
>#よかったらおしえてくださいませ。

すいません、コメントをつけずにいて。
今日テストしてみました。(^^;

うまくいきました。前回のコメントをつけました。ご覧下さい。

0688.htm

今回のも検討/テスト結果をコメントしますね。
(すこし遅いかもしれませんが…(^^;)

730) Re3:Win95でのコンピュータ名の取得方法 じゃく 2002/10/01(火) 20:03


こんばんは。

>うまくいきました。前回のコメントをつけました。ご覧下さい。

0688.htm
拝見しました。うまくいったようで何よりです。

こちらは結果のほうにコメントします。
>今回のも検討/テスト結果をコメントしますね。
>(すこし遅いかもしれませんが…(^^;)

729) Re2:Win95でのコンピュータ名の取得方法 リカルド 2002/10/01(火) 18:48


じゃくさん、ありがとうございます。

>これでどうでしょうか。当方Win95環境が手近にないので、98SEで動作確認しました。(ただしコンピュータ名の先頭に\\がついてしまいます。仕様です^^)

さっそくテストしてみました。
Win98SEではうまくいきました。
でも、Win95ではうまくいきませんでした。
(3台のWIN95でやってみましたがうまくいきません)

このバッチの意味あいを理解している訳ではありませんが…
HOSTNAMEに何も入ってこないようです。
何かをすれば、95でもうまくいく筈なんでしょうか?


----------
何とかできないか?自分でも考えてみます。

しかし、じゃくさんの方法がうまくできれば、
支店にある200台近くのWin95のメンテやメンテの確認が
すごく楽になり最高なのですが…(^^;)



731) Re3:Win95でのコンピュータ名の取得方法 じゃく 2002/10/01(火) 20:10


こんばんは。

>でも、Win95ではうまくいきませんでした。
>(3台のWIN95でやってみましたがうまくいきません)

>このバッチの意味あいを理解している訳ではありませんが…
>HOSTNAMEに何も入ってこないようです。
>何かをすれば、95でもうまくいく筈なんでしょうか?

Win95のコマンドラインで
net config
のコマンドを実行したときの出力結果を教えていただけないで
しょうか。98SEと出力結果が異なるのかもしれません。

今回のバッチはこの出力結果に依存するので異なるメッセージだと
バッチを修正しないといけません。お時間のあるときに調べてみて
ください。うまくいけば管理が楽になりますよね。


734) Re4:Win95でのコンピュータ名の取得方法 パトレーゼ 2002/10/02(水) 11:51


じゃくさん、レスありがとうございます。

WIN95(2台)とwin98のMS-DOSプロンプトから、
Net config > テキストファイル出力した結果です。

できればこのコンピュータ名を環境変数にSETできれば、
PCが他支店へ移設し、コンピュータ名が変わった場合でも
自動的に取得できるので、台数の多いPC運用上すごく便利になります。

----Win95のNet config 出力結果---
コンピュータ名 \\xxxxxxx
ユーザー名 xxxxxxx
ワークグループ xxxxxx
ワークステーションのルート ディレクトリ C:\WINDOWS

ソフトウェアのバージョン 4.00.950
リダイレクタのバージョン 4.00
コマンドは正常に完了しました。


----Win98SEのNet config 出力結果---
コンピュータ名 \\xxxxxxx
ユーザー名 xxxxxxx
ワークグループ xxxxxx
ワークステーションのルート ディレクトリC:\WINDOWS

ソフトウェアのバージョン 4.10.1998
リダイレクタのバージョン 4.00
コマンドは正常に完了しました。


736) Re5:Win95でのコンピュータ名の取得方法 じゃく 2002/10/02(水) 12:24


こんにちは。

>----Win95のNet config 出力結果---
>コンピュータ名 \\xxxxxxx
>ユーザー名 xxxxxxx
>ワークグループ xxxxxx
>ワークステーションのルート ディレクトリ C:\WINDOWS

>ソフトウェアのバージョン 4.00.950
>リダイレクタのバージョン 4.00
>コマンドは正常に完了しました。

なるほど、カタカナが半角なのですね。
ちょっと迷いましたが、これでどうでしょうか。

----------------------------------------
if "%1"=="next" goto next
echo set hostname=%%1 > コンピュータ名.bat
echo %0 next >> コンピュータ名.bat
copy コンピュータ名.bat コンピュータ名.bat
net config | find "コンピュータ名" > tmp.bat
net config | find "コンピュータ名" >> tmp.bat
tmp.bat
:next
echo コンピュータ名は %hostname% です
del tmp.bat
del コンピュータ名.bat
del コンピュータ名.bat

動作原理を簡単に説明しておきます。
このバッチは、net config の結果を環境変数に入れるため
少々めんどくさいことをしています。
(NT系ならスマートにできるのですが、9X系なので)

まず、コンピュータ名.batというバッチファイルを作ります。
このコンピュータ名.bat では、1つ目の引数を環境変数
hostnameにセットし、現在のバッチに戻る記述がしてあります。
つぎに net config のうち「コンピュータ名」がある行を
取り出し、その1行の内容をバッチファイル(tmp.bat)として
保存します。
そして自分自身の制御をtmp.batへ移行します。
tmp.batではコンピュータ名というコマンドが実行されます。
つまりあらかじめ作成したコンピュータ名.batに制御が移り
環境変数hostname にセットして元のバッチに戻ります。

わかりにくい説明ですが、お役に立てれば幸いです。
うまく動作してくれるか楽しみです。

754) Re6:Win95でのコンピュータ名の取得方法 パトレーゼ 2002/10/04(金) 19:22


じゃくさん
Win95PCでテストしてみました。

結果は、1台目では環境変数にコンピュータ名がセットされました。
しかし、2台目では「環境変数のための領域が足りません」がでてセットされませんでした。(^^;)
せっかく頭をひねっていただいたのに、残念無念です。(^^;)

自分は、環境変数の最大サイズについては、詳しくありませんが…
支店にあるPCのAUTOEXEC.BATの中身は、PCごと違うので、
上記のようにうまくいかないPCもある訳ですよね… (^^;;)


---------
このため、自分なりに考えてみました。
各Win95PCのautoexec.batの最終行に、
SET COMPUTERNAME=xxxxxx を固定的に追加しようかな?と
思っています。
これだと、PC移設毎、autoexec.batの中をメンテが必要な方法です。


---------
それで教えて欲しいのですが、じゃくさんの方法と
autoexec.batに固定的に追加する方法では
環境変数の消費量は違うのでしょうか?

autoexec.batに固定的に追加する方法でも、
「環境変数のための領域が足りません」がでる可能性はあるんでしょうか?(^^;)

もし分かれば教えてくださいませ。
お手数かけます。


778) Re7:Win95でのコンピュータ名の取得方法 じゃく 2002/10/09(水) 09:18


パトレーゼさん、遅くなりました。

>結果は、1台目では環境変数にコンピュータ名がセットされました。
>しかし、2台目では「環境変数のための領域が足りません」がでてセットされませんでした。(^^;)
>せっかく頭をひねっていただいたのに、残念無念です。(^^;)

>自分は、環境変数の最大サイズについては、詳しくありませんが…
>支店にあるPCのAUTOEXEC.BATの中身は、PCごと違うので、
>上記のようにうまくいかないPCもある訳ですよね… (^^;;)

環境変数のサイズの設定は、 config.sys で行うようです。
この掲示板のFPCUのDOS/Vコマンドリファレンスをみてください。
http://fpcu.on.coocan.jp/dosvcmd/set.htm
http://fpcu.on.coocan.jp/dosvcmd/command.htm
このURLの記述だと、何も指定しないと256バイトしか
確保されないようです。


>このため、自分なりに考えてみました。
>各Win95PCのautoexec.batの最終行に、
>SET COMPUTERNAME=xxxxxx を固定的に追加しようかな?と
>思っています。
>これだと、PC移設毎、autoexec.batの中をメンテが必要な方法です。

>---------
>それで教えて欲しいのですが、じゃくさんの方法と
>autoexec.batに固定的に追加する方法では
>環境変数の消費量は違うのでしょうか?

上のURLを見る限り同じですね。
>autoexec.batに固定的に追加する方法でも、
>「環境変数のための領域が足りません」がでる可能性はあるんでしょうか?(^^;)
autoexec.bat の最初に書けば先に環境変数を使うので
設定はされるはずです。
しかし、その後に長いPATHなどを設定しようとすると
ユーザ側がセットできないことも起きるかもしれません。
さらに、すべてのWIN95の面倒をみないといけませんよね。

パトレーゼさんの業務でどのように取得したホスト名を
使うのかにもよりますが、環境変数に設定したホスト名を
バッチで使うつもりなら、以下のバッチをひな形にして
みてはいかがでしょうか。
前回のホスト名取得バッチの、環境変数にセットしない版です。
==================================

if "%1"=="next" goto next
echo %0 next %%1 > コンピュータ名.bat
copy コンピュータ名.bat コンピュータ名.bat
net config | find "コンピュータ名" > tmp.bat
net config | find "コンピュータ名" >> tmp.bat
tmp.bat
:next
del tmp.bat
del コンピュータ名.bat
del コンピュータ名.bat
REM ここ以降に処理したい内容を書く。
REM ホスト名はこのバッチ内では %2 で参照可能
echo コンピュータ名は、 %2 です。


799) Re8:Win95でのコンピュータ名の取得方法 パトレーゼ 2002/10/14(月) 21:34


>バッチで使うつもりなら、以下のバッチをひな形にして
>みてはいかがでしょうか。
>前回のホスト名取得バッチの、環境変数にセットしない版です。
>==================================

>if "%1"=="next" goto next
>echo %0 next %%1 > コンピュータ名.bat
>copy コンピュータ名.bat コンピュータ名.bat
>net config | find "コンピュータ名" > tmp.bat
>net config | find "コンピュータ名" >> tmp.bat
>tmp.bat
>:next
>del tmp.bat
>del コンピュータ名.bat
>del コンピュータ名.bat
>REM ここ以降に処理したい内容を書く。
>REM ホスト名はこのバッチ内では %2 で参照可能
>echo コンピュータ名は、 %2 です。

じゃくさん
ためしにやってみます。
ありがとうございます。
 
 


カテゴリー「NET CONFIG」索引へ

 

カテゴリー一覧

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


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

資料書籍

About

2002年09月30日 13:37に投稿されたエントリーのページです。

ひとつ前の投稿は「SETUPディスクのDOSプロンプトから長い名前のファイルをコピーしたい」です。

次の投稿は「別コンピュータへのファイルコピー(XCOPY)をATコマンドで実行したい」です。

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

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