This content has been marked as final. Show 6 replies
i have also created a user and set the cf service to log on as that user, then i logged on as the user and ran the BAT file and it worked manually, but not from a CF call.
it doesn't appear to be a permissions issue, maybe something else...
Is CfExecute disabled for CF on that server? Many ISPs will not let that tag operate as it is a huge security issue.
We run EXE using CFEXECUTE on our intranet server (2003 Standard) only and have no problems so long as it is enabled. We don't need any extra user accounts etc.
Another possibility is that you have an AV solution that is dampering it because it senses that you are not physically accessing the EXE , but rather a script (which could be malicious in nature) is trying to access that EXE automatically. If this is the case, you need to have an Enterprise level AV solution that will allow you to set which files can be accessed by which scripts while still providing protection from any other automated code.
In your bat file, pipe the output to a text file. Maybe there is some error that is getting "displayed" when the bat file is running, but CF can't "see" it.
thanks for the replies.
i figured out how to run the EXE from a batch file by CDing to the directory then running the app, which works, but is a little clunky. apparently you can't be sure CF will run your batch file from the dir it exists in, so you need to change to it first.
however when i try to run the app directly from cfexecute, i get no errors on the web page but nothing happens. cf seems to just passively ignore it. even if i put a full path to the EXE or do it relatively, it doesn't make a difference.
since this command requires a lot of arguments, a batch file is not the most desirable path...
is it possible that this has something to do with our AV? seems unlikely, but i have no idea at this point.
Have you tried specifying the absolute UNC path? \\server\share\batfile.bat
Also, use the CFEXECUTE attribute that captures the output to a variable then look at it.
If you think it's AV related, set your AV program to ignore the directory that contains the executable you are trying to run.
Try setting your timeout to 10 seconds or as long as it takes to run the file normally.