The most common reasons for the subject problem is:
1. The logon script is not replicated to the BDCs.
2. The logon script name is incorrect.
3. The logon script is in an incorrect location.
4. The user does not have permission to read the file.
The logon script must be stored on each domain control in the NetLogon share, which is mapped to %SystemRoot%\System32\Repl\Import\Scripts.
If you are replicating from the PDC, the script should also be stored on the PDC in %SystemRoot%\System32\Repl\Export\Scripts.
The logon script batch file name should be configured in the user profile by double-clicking the Username in User Manager for Domains, pressing the Profile button, and entering the script batch file name, without the .bat extension, in the Logon Script Name box. You may also set it in batch:
where the path is the logon script batch file name, without the .bat extension.