- PR -

OSをWindowsXPに換えたら...

1
投稿者投稿内容
いしし
会議室デビュー日: 2005/02/24
投稿数: 6
投稿日時: 2005-02-24 18:22
初めまして、いししと申します。

いろいろ探しましたが、このような問題が無かったようなので質問させて頂きます。

元々はWindows98で動いていたAccess97のシステムをWindowsXP Proにのせ換えた所、
WindowsAPIのWNetAddConnection2Aを使ったネットワークドライブの接続が
できなくなりました。

環境は、
サーバー WindowsXP Pro
クライアント Windows98→WindowsXP Pro
サーバー・クライアント間はISDN回線を使ったダイヤルアップ

もともとは
Private Declare Function WNetAddConnection2A Lib "mpr" (lpNetResource As NetResource, ByVal lpPassword As String, ByVal lpUserName As String, ByVal dwFlags As Long) As Long
Private Declare Function WNetCancelConnection2A Lib "mpr" (ByVal lpName As String, ByVal dwFlags As Long, ByVal fForce As Long) As Long
Private Type NetResource
dwScope As Long
dwType As Long
dwDisplayType As Long
dwUsage As Long
lpLocalName As String
lpRemoteName As String
lpComment As String
lpProvider As String
End Type
---ちょっと省略
Dim nr As NetResource

nr.lpLocalName = "F:"
nr.lpRemoteName = "\\Server\Data"
nr.dwType = 1
result = WNetAddConnection2A(nr, "", "", 1)
if result <> 0 Then
'NG
MsgBox "接続に失敗しました。[" & result & "]"
End If
----以下省略
という記述でWindows98のときは問題なく接続できていましたが、
WindowsXP Proに変えた所、resultに5が帰って来るようになりました。
社内LANで検証したところ、社内LANでも同じ結果でした。
Win98で空白を指定していたユーザー、パスワードがNT系では必要とのことから
result = WNetAddConnection2A(nr, "", "", 1)
の1行を
result = WNetAddConnection2A(nr, "hoge", "hoge", 1)
に書き換えました。
この変更により、社内LAN環境では問題なく接続できたのですが、
ダイヤルアップ環境に持っていったところresult=53となり、接続できませんでした。

エラーコード53は「ネットワーク パスが見つかりません。」だと思うのですが、
対応方法が全く見えていない状態です。

どなたかご存知であれば対応方法を教えて頂きたいと思います。

よろしくお願い致します。
NAO
ぬし
会議室デビュー日: 2001/10/24
投稿数: 1256
お住まい・勤務地: 神奈川のはずれから東京の下町
投稿日時: 2005-02-24 18:25
今晩は。

あれ?Access97ってXPサポートしてましたっけ? 
いしし
会議室デビュー日: 2005/02/24
投稿数: 6
投稿日時: 2005-02-24 18:42
お世話になります。

http://www.microsoft.com/japan/windowsxp/compatible/business/default.aspx
によると、サポートしています。
NAO
ぬし
会議室デビュー日: 2001/10/24
投稿数: 1256
お住まい・勤務地: 神奈川のはずれから東京の下町
投稿日時: 2005-02-24 18:46
今晩は。
API周り変わってないか確認してみた方が良いかも。 
甕星
ぬし
会議室デビュー日: 2003/03/07
投稿数: 1185
お住まい・勤務地: 湖の見える丘の上
投稿日時: 2005-02-24 19:37
仮に・・・ダイアルアップした後、コマンドプロンプトから

net use F: \\Server\Data /user:Hoge
とやって繋がる?もし繋がらないならプログラム云々以前の問題。

#ダイアルアップでコンピューター名の解決って出来たっけ?
_________________
甕星 <mikahosi@abox9.so-net.ne.jp>
http://blogs.msmvp.jp/mikahosi/
いしし
会議室デビュー日: 2005/02/24
投稿数: 6
投稿日時: 2005-02-25 14:48
お世話になっています。

NAOさん、甕星さん、ありがとうございます。

NAOさんの言われるように、API周りが変わっているか調べようと
思いましたが、私にはちょっと荷が重く、甕星さんのnet useから
試して見ることにしました。

net useでも繋がりませんでしたのでプログラム云々以前の問題と判断しました。

#ダイアルアップでコンピューター名の解決って出来たっけ?

の一言から、lmhostsの設定を確認したところ、有効になっていませんでした。

WINSの設定からlmhostsの設定を行い、無事接続できました。

結局WindowsXPが影響してたのはWNetAddConnection2Aでユーザー、パスワード
をちゃんと設定しなければならなかっただけのようです。

NAOさん、甕星さん、アドバイスやヒントを頂き、無事解決できました。
本当にありがとうございました。
またお世話になることがあるかと思いますが、よろしくお願い致します。
1

スキルアップ/キャリアアップ(JOB@IT)