Unfortunately I cannot add the batch file to the temporary folder section in WyBuild. As I mentioned before, the reason is because first I need to retrieve the database connection string from the client side as we do not know the database name, username and password for connecting to the database.
The batch file is created manually or generated from and .exe file. The steps that we have done are:
1.- We add the SQL file script to the temporary folder section of WyBuild.
2.- We add the .exe file to the temporary folder section of WyBuild and set to be executed with the option "before update has begun".
Then the client execute the WyUpdate and the results are as follow:
1.- Tempory files (SQL file script and the .exe file) are copied to a temp directory that is not represented by the %temp% folder.
%temp% = "C:\Users\ADMINI~1\AppData\Local\Temp\1".
WyUpdate copied them to a random folder like: "C:\Users\Administrator\AppData\Local\Temp\1\w3535\temp".
2.- The .exe file is executed and creates the batch file ( .cmd ).
3.- For some reason the batch file ( .cmd ) is created by the .exe file to the application folder firectory instead of the temp folder.
4.- The generated batch file ( .cmd ) is executed by the same .exe file.
5.- The cmd fail because it shows that the script file cannot be found. It is because the .cmd file was generated in the application folder and executed from there hence cannot see the script file.
Now, if I use the option "%~dp0", then is still translating it to the application folder as I believe the execution context is still there and the cmd file was created there as well.
%temp% is working fine, but is still giving me the error that cannot fine the file. This is because WyUpdate is NOT COPYING the files to that directory. WyUpdate generates random subfolders withing %temp% such as "w3535\temp" so I do not have a way of specifiying the batch sqlcmd that the script is located there.
So My question is how could I retrieve the real temp folder path where WyUpdate is copying the script.
If that is not posible, can you advice us who to deal when you do not have the name of the database, username and password of the clients to be updated? Please help