
No.5ベストアンサー
- 回答日時:
一応VBSでドライブの割り当てをチェックしてから割り当てるサンプルプログラムを作ってみました。
注:他のユーザ名で既に何処かの共有フォルダを使用している場合は、複数のユーザー名が使えないというエラーになります。その場合は、他のユーザー名での接続を切断する必要があります。
'空いているドライブ名にネットワークドライブを割り当てる
dim objFs, objNet, DriveLetter, Drive
dim i
Set objNet = WScript.CreateObject("WScript.Network")
Set objFs = WScript.CreateObject("Scripting.FileSystemObject")
DriveLetter="DEFGHIJKLMNOPQRSTUVWXYZ"
for i=1 to Len(DriveLetter)
Drive = Mid(DriveLetter,i,1)
if not objFs.DriveExists(Drive) then '指定したドライブが見つからない
Drive = Drive & ":"
exit for
end if
next
if Len(Drive) = 1 then
WScript.Echo "割り当てるべきドライブ名の空きがありません"
WScript.Quit(1)
end if
'WScript.Echo Drive
objNet.MapNetworkDrive Drive, "\\2000Server\share1",,"oji","ojipassword"
if objFs.FileExists(Drive & "\Target1.dat") then
WScript.Echo "YES" '実際の処理を書く
end if
objNet.RemoveNetworkDrive Drive
ありがとうございました。
おかげさまで解決できました。
やはり私の質問が説明不足でお手数をおかけしたみたいで申し訳ございませんでした。
以後気をつけますので機会がございましたら、今後ともよろしくお願いいたします。
また、別のカテゴリーになると思いますが恩返し出来るよう皆さんのご質問にも答えられるよう努力してみます。
ありがとうございました。
No.4
- 回答日時:
>しかし\\2000Serverはドメイン外でローカルには“oji”というアカウントはあるが、クライアント使用者の個別アカウントは無いのでみんなで“oji”を使用し接続したい。
>そこで、“net use \\node1\share1 /user:oji passwd”
>を実行後、上記のファイルにアクセスさせる事にしたが、98ではNETコマンドで/userスイッチが使えなかったので
なるほど、
#3で言ってることと矛盾するように思われるかもしれませんが、
使用許可がなければ、直接はアクセスできませんね。
しかも、言われるとおり、98(95系)では、ユーザ指定してのNET USEができないので、#1の方法は多分使えませんね。
やはり、MapNetworkDriveを使うしかないと思います。(ネットドライブの解除にはRemoveNetworkDriveを使います)
サーバーの方で個別にユーザーを登録することができないのなら、98側で(立ち上げ時に)ojiでログインさせるという方法もあるかと思いますが、それもなかなか面倒ですよね。
特に問題なければ、該当共有フォルダでのアクセスにゲストを許可しておけば、ネットドライブを作成すること無しにアクセスできると思います。
No.3
- 回答日時:
>ところでターゲットとなるリモート共有フォルダをマウントせずに実現させる事は無理なのでしょうか?
>最後にアンマウントすればOKなのですが・・・。
>素人考えで恐縮なのですが、もし可能なら空きドライブを探したりするコードとか必要無いような気がしますが如何でしょうか?
NET USE自体がネットドライブを作るコマンドなので、ネットドライブを作成せずにファイルやフォルダのアクセスができるか?
という質問なのだと思いますが、
\\ホストPC\共有フォルダ\…以下の指定でファイルやフォルダが特定できればネットワークドライブを作らずに直接操作できます。
なので、VBSとしては、ネットワークドライブを作らなくていけない理由はありません。
蛇足ですが
ネットワークドライブを作らなくてはならないような場合とは、それで、今までのソフトが(ドライブ名を指定して動くようなソフト)そのまま動くとか
¥¥から始まるファイル名に対応していないソフトを使うとかそういう場合に必要になります。
>NET USE自体がネットドライブを作るコマンドなので・・・
なるほど、そうだったんですか。
理解しました。ありがとうございます。
>ネットドライブを作成せずにファイルやフォルダのアクセスができるか?
まさにその通りです。最初の質問で何を目的としているのかを具体的に書くべきでした。今更ながらで大変申し訳ないのですが、説明させていただきますと、
\\2000Server\share1\Target1.dat
上記のような特定のファイルにWin98や2K、XPからユーザID、パスワード入力なしで出来ればネットワークドライブも作らずにアクセスさせたい。
しかし\\2000Serverはドメイン外でローカルには“oji”というアカウントはあるが、クライアント使用者の個別アカウントは無いのでみんなで“oji”を使用し接続したい。
そこで、“net use \\node1\share1 /user:oji passwd”
を実行後、上記のファイルにアクセスさせる事にしたが、98ではNETコマンドで/userスイッチが使えなかったので、VBSにすれば目的は達成できるのではないか?
と考え本件の内容で質問するにいたりました。
ひょっとしたらこの説明が無かった為に皆さんの貴重なお時間を無駄にさせてしまったかもしれません。
また全角100文字にも収められませんでした。
この場をお借りしてお詫び申し上げます。
申し訳ございませんでした。
No.2
- 回答日時:
ほぼ同等なコマンドは以下になります
Dim WshNetwork
Set WshNetwork = WScript.CreateObject("WScript.Network")
WshNetwork.MapNetworkDrive "E:", "\\node1\share1",,"oji",password
ドライブ名は空いているドライブを指定する必要があります。
ドライブ名が存在しているかどうかはFileSystemObjectのDriveExistsメソッドで調べることができます。
passwordは、埋め込む必要があります。
実行時に入力させるには、InputBoxを使います。
InputBoxを使った場合、入力された文字が見えてしまいますので、非表示にしたい(あるいは*に置き換えたい)と言う場合には、オートメーションオブジェクト(ActiveX)などを作成する必要があります。
ソースに書き込んでそれを隠蔽したい場合は、エンコーダーを使えば暗号化できます。
御礼が遅くなり申し訳ございません。
ありがとうございました。
私のレベルではご教示頂いた内容を試すには、やはり勉強しないと駄目みたいです。
時間が許す限りがんばって勉強します。
ところでターゲットとなるリモート共有フォルダをマウントせずに実現させる事は無理なのでしょうか?
最後にアンマウントすればOKなのですが・・・。
素人考えで恐縮なのですが、もし可能なら空きドライブを探したりするコードとか必要無いような気がしますが如何でしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(コンピューター・テクノロジー) (コマンドプロンプト)コマンドプロンプトのactiveについて 2 2022/07/16 17:21
- Microsoft ASP C#からvbsを実行したい 5 2022/11/24 17:31
- MySQL 参考書に従って入力したつもりでしたが、最後はエラーがでました。 1 2022/09/28 03:45
- 大学受験 本気で困ってます! 大学受験/現代文の参考書ルートについて質問です! 現代文の参考書ルートについてで 2 2023/08/13 20:07
- 簿記検定・漢字検定・秘書検定 [簿記] 簿記に詳しい方や、日商簿記2級に合格した方に質問です。 学生です。 -日商簿記の2級を取り 1 2023/01/17 02:50
- 大学受験 偏差値40の受験生です。 現在19歳バイトしてなく武田塾に通ってます。 1日最低12時間勉強していて 6 2022/06/12 23:52
- Visual Basic(VBA) vba Sleep関数について教えてください 1 2023/01/18 10:18
- Visual Basic(VBA) tatsumaru77様 昨日回答して頂いたものです。 すみませんが、昨日の質問で1つ補足があります 1 2022/05/15 15:06
- 友達・仲間 至急です。LINEでの謝罪について、下記の【状況】を参考に、下記の【LINEで送る文章】に対して、下 1 2023/06/08 20:48
- 就職 こんにちは 将来パン屋を開きたいと思っています そこで、進路に迷っています 現在、高校卒業して1年目 7 2022/09/11 20:29
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
MS-DOS6.2でCD-ROMドライブを認...
-
USBメモリ一つ挿すとFドライブ...
-
ドライブについて
-
空CDを「空」と認識してくれず...
-
CDをパソコンに取り込むとき...
-
DVD-ROMドライブ
-
USBメモリーが(F)から(G)になった
-
定時にDVDドライブが動き出す。...
-
CD/DVD取り出しがわからな...
-
ディスクトレイが勝手に開いて...
-
Fドライブは「赤丸の中にレ点マ...
-
CDドライブを無効にしたいです。
-
コマンドプロンプトで他のドラ...
-
ネットワークドライブが増える...
-
リムーバブルディスク (F、G,...
-
HDDの寿命…。
-
DVDに入っている写真の見方...
-
DVDが見られず、困っています!
-
DVD Decrypter I/Oエラー WIN8
-
PCでのCD/DVD再生の音とび
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
USBメモリ一つ挿すとFドライブ...
-
USBメモリーが(F)から(G)になった
-
CDをパソコンに取り込むとき...
-
デバイスとドライブの違いを教...
-
MS-DOS6.2でCD-ROMドライブを認...
-
メディアプレイヤーのコピー先...
-
コマンドプロンプトで他のドラ...
-
Fドライブは「赤丸の中にレ点マ...
-
ディスクトレイが勝手に開いて...
-
読み込めるディスクと読み込め...
-
空CDを「空」と認識してくれず...
-
パソコンのリムーバブルディス...
-
CDドライブがCDを吐き出す
-
PCのD,E,F,Gドライブは何処にあ...
-
論理ドライブ作成時に「D」が選...
-
ImgBurn等でISOファイルを書き...
-
BitLocker
-
DVD,CDが読み込めません。ファ...
-
外付けHDDのドライブがEからFに...
-
リムーバブルディスク (F、G,...
おすすめ情報