Hi Support Team,
I am the developer of the PVCSmerge tool providing the use of Beyond Compare as comparison tool within PVCS / Merant Dimensions. A user informed me about a problem and I did some analyses. I'd like to explain what I've found.
In detail my tool calls BCompare.exe to display the comparison. If the process ends it deletes the temp files. BC 3 introduce tabs: In case Beyond Compare is already running there is no new process to create; instead the already runnnig BCompare process is used. This leads to a too early deleted temp file (because CreateProcess and a following WaitForSingleObject returns too early).
It seems that you already solved this problem - in BComp.exe. If I use this for comparison this problem is absent. But not for ZIP files (and files with a file extension configured in Options/Folders/Archive assignments). If BComp.exe is called with such a ZIP file it exits too early and therefore my tool deletes the temp file before BC 3 has loaded it. I can workaround it by postponing the deletion - but I think it should be solved in general...
The short form of where I'd like to draw your attention to is:
- comparison of two text files - BComp.exe waits until BCompare.exe exits
- comparison of two archives - BComp.exe starts BCompare and immediately exits
More details are provided with the following examples:
1. BComp.exe is called to compare two pas files:
"C:\Program Files (x86)\Beyond Compare 3\BComp.exe" "F:\Compiler\Delphi\Utils\Sudoku\uSudoku.pas" "C:\Users\Michael\AppData\Local\Temp\pvcs\_te79xj4 7.pas" /title1="uSudoku.pas (workfile)" /title2="uSudoku.pas (Rev. 1.2)" /rro
BComp then performs the following command:
"C:\Program Files (x86)\Beyond Compare 3\BComp.exe" "F:\Compiler\Delphi\Utils\Sudoku\uSudoku.pas" "C:\Users\Michael\AppData\Local\Temp\pvcs\_te79xj4 7.pas" /title1="uSudoku.pas (workfile)" /title2="uSudoku.pas (Rev. 1.2)" /rro /BCompWnd=$00090ADE
If I close the Beyond Compare window, both processes end.
Besides: I can use ESC to close / exit the comparison tab.
2. BComp.exe is called to compare two mpb files. I have configured MPB files to be treated as ZIP files in the above mentioned options section (I changed the value to "*.zip;*.jar;*.ear;*.war;*.bcpkg;*.mpb;*.hmxz" ):
I cannot grab the command line from Process Explorer because it disappears too fast. But I can see the BComp.exe process creates the BComprare.exe process. It remains in the Process Explorer window (without a parent process) and therefore I can see the command line used to create the process:
"C:\Program Files (x86)\Beyond Compare 3\BComp.exe" "F:\Compiler\Delphi\Utils\Sudoku\Sudoku.mpb" "C:\Users\Michael\AppData\Local\Temp\pvcs\_7dcin44 9.mpb" /title1="Sudoku.mpb (workfile)" /title2="Sudoku.mpb (Rev. 1.2)" /rro /BCompWnd=$00050B0C
BComp.exe is already disappeared, and this BCompare.exe disappears in case I close the comparison.
Besides: here I cannot use ESC to close / exit the comparison.
Is this helpful for you or do you disagree that this is a bug?
Best regards
Michael
I am the developer of the PVCSmerge tool providing the use of Beyond Compare as comparison tool within PVCS / Merant Dimensions. A user informed me about a problem and I did some analyses. I'd like to explain what I've found.
In detail my tool calls BCompare.exe to display the comparison. If the process ends it deletes the temp files. BC 3 introduce tabs: In case Beyond Compare is already running there is no new process to create; instead the already runnnig BCompare process is used. This leads to a too early deleted temp file (because CreateProcess and a following WaitForSingleObject returns too early).
It seems that you already solved this problem - in BComp.exe. If I use this for comparison this problem is absent. But not for ZIP files (and files with a file extension configured in Options/Folders/Archive assignments). If BComp.exe is called with such a ZIP file it exits too early and therefore my tool deletes the temp file before BC 3 has loaded it. I can workaround it by postponing the deletion - but I think it should be solved in general...
The short form of where I'd like to draw your attention to is:
- comparison of two text files - BComp.exe waits until BCompare.exe exits
- comparison of two archives - BComp.exe starts BCompare and immediately exits
More details are provided with the following examples:
1. BComp.exe is called to compare two pas files:
"C:\Program Files (x86)\Beyond Compare 3\BComp.exe" "F:\Compiler\Delphi\Utils\Sudoku\uSudoku.pas" "C:\Users\Michael\AppData\Local\Temp\pvcs\_te79xj4 7.pas" /title1="uSudoku.pas (workfile)" /title2="uSudoku.pas (Rev. 1.2)" /rro
BComp then performs the following command:
"C:\Program Files (x86)\Beyond Compare 3\BComp.exe" "F:\Compiler\Delphi\Utils\Sudoku\uSudoku.pas" "C:\Users\Michael\AppData\Local\Temp\pvcs\_te79xj4 7.pas" /title1="uSudoku.pas (workfile)" /title2="uSudoku.pas (Rev. 1.2)" /rro /BCompWnd=$00090ADE
If I close the Beyond Compare window, both processes end.
Besides: I can use ESC to close / exit the comparison tab.
2. BComp.exe is called to compare two mpb files. I have configured MPB files to be treated as ZIP files in the above mentioned options section (I changed the value to "*.zip;*.jar;*.ear;*.war;*.bcpkg;*.mpb;*.hmxz" ):
I cannot grab the command line from Process Explorer because it disappears too fast. But I can see the BComp.exe process creates the BComprare.exe process. It remains in the Process Explorer window (without a parent process) and therefore I can see the command line used to create the process:
"C:\Program Files (x86)\Beyond Compare 3\BComp.exe" "F:\Compiler\Delphi\Utils\Sudoku\Sudoku.mpb" "C:\Users\Michael\AppData\Local\Temp\pvcs\_7dcin44 9.mpb" /title1="Sudoku.mpb (workfile)" /title2="Sudoku.mpb (Rev. 1.2)" /rro /BCompWnd=$00050B0C
BComp.exe is already disappeared, and this BCompare.exe disappears in case I close the comparison.
Besides: here I cannot use ESC to close / exit the comparison.
Is this helpful for you or do you disagree that this is a bug?
Best regards
Michael
Comment