私たちは、ms-access フロントエンドにかなり多くの変更を加えているため、ms-access アプリケーションを頻繁に更新する必要があります。リモート更新に PSEXEC を使用しようとしましたが、マウントされたローカル ネットワーク ドライブと PSEXEC に問題があるようです。
当社には 16 台の Windows 10 コンピューターを備えた 1000 Mbit ネットワークがあります。
共有データベースが配置されている Linux サーバーがあり、更新されたアクセス フロントエンドがアップロードされ、各ユーザーが bat ファイルをアクティブ化して、アクセス フロントエンドをそれぞれの Windows 10 コンピューターにコピーするのを待機しています。
各 Windows 10 コンピュータには、Linux サーバー上にあるコンピュータ固有の bat ファイルへの独自のバッチ ファイル ショートカットがあります。
サーバーはすべてのマシン上でドライブ K: としてマウントされます。
user1 Windows 10 PC 上の bat ファイルは k:\Database\Development\Install\PC1.bat にあり、次のようになります。
バッチファイル名: PC1.bat
taskkill /f /fi "imagename eq msaccess.exe"
del C:\Users\user1\Desktop\program1_v*.*
del C:\Users\user1\Desktop\program4_v*.*
del /s /q d:\User_Program\*.*
xcopy /e /q /y k:\Database\Development\Install\Program_shcut\*.* C:\Users\User1\Desktop\
xcopy /e /q /y k:\Database\Development\Install\Program\*.* D:\User_Program\
このタスクの解決策があれば、多くの時間を節約でき、すべてのアプリケーションが同時に更新されることが保証されます。
答え1
リモート コンピューターで、アクション「k:\Database\Development\Install\PC1.bat」とトリガーなしの「Update_Programs」という名前のタスク スケジュールを作成することで、問題の解決策を見つけました。
ロケール コンピューターで、リモート マシン上の「Update_Programs」という名前のタスク スケジューラを実行するバッチ ファイルを作成しました。
@ECHO off
psexec \\ip no -u username -p password -s -d cmd.exe /c schtasks /run /tn Update_Programs