windowsはeveypne接続的な簡易なアクセスを制限している
設定方法を記載する
1.copy専用ユーザの追加 Microsoftアカウントなし
net user ユーザー名 パスワード /add
net localgroup administrators ユーザー名 /add
2.共有フォルダ作成
「共有」タブ → 詳細な共有 を選択。
「アクセス許可」をクリック。
権限を付与
フォルダの 「セキュリティ」タブ を開く
編集」→ 作成したユーザを追加。
4.ネットワーク共有
・設定 → ネットワークと共有センター → 詳細共有設定 →
「ネットワーク探索を有効にする」
「ファイルとプリンターの共有を有効にする」をオン。
パスワード保護共有を有効化
「設定 → ネットワークとインターネット → 状態 → ネットワークのプロパティ」
ネットワークが 「プライベート」 になっていることを確認。
(「パブリック」だと共有がブロックされます
5.ファイアオール
tcp445 tcp/udp137-139
6.確認
\\PC名\SharedData がダメなら \\IPアドレス\SharedData
7.バッチファイルで共有ファイルにアクセス
仮に192.168.11.8\testusrとし PCをXC750DA
ユーザをcopyuser パスワードをuserPassとすると
net use \\192.168.11.8\testusr /delete
net use \\192.168.11.8\testusr userPass /user:XC750DA\copyuser /persistent:no
で接続可能
@echo off
chcp 932 >nul
setlocal
REM ====== 設定 ======
set "SRC=\\TBS121\user\ish\newexec"
set "DST=C:\user\ish\bin"
set "FILE=*.*"
set "USER=Copyyyyyy"
set "PASS=xxxxxxxx"
REM 既存接続をすべて削除
echo 既存のネットワーク接続をすべて削除します。
net use * /delete /y >nul
if %errorlevel%==0 (
echo すべての接続を削除しました。
) else (
echo 接続削除に失敗しました。処理を中止します。
goto end
)
REM ネットワーク接続
net use "%SRC%" "%PASS%" /user:TBS121\%USER% /persistent:no
if errorlevel 1 (
echo ネットワーク接続に失敗しました。
goto end
)
REM 宛先フォルダ確認
if not exist "%DST%" mkdir "%DST%"
REM ファイル存在確認(ワイルドカード対応:dirで判定)
dir "%SRC%\%FILE%" >nul 2>&1
if errorlevel 1 (
echo コピー対象ファイルが存在しません。コピーは行いません。
) else (
echo コピー対象が見つかりました。コピーを実行します。
copy /y "%SRC%\%FILE%" "%DST%"
if errorlevel 1 (
echo コピーに失敗しました。
) else (
echo コピーに成功しました。
)
)
REM 接続解除
net use "%SRC%" /delete >nul 2>&1
:end
endlocal