2. start Visual Studio and open exe with File > Open >
Project/Solution
and choose soffice.exe in program folder.
It is not soffice.exe that is the actual LibreOffice program, it's
soffice.bin. (Which despite its odd .bin suffix is a totally normal .exe
file.) Soffice.exe is just a thin wrapper that sets up PATH and then starts
soffice.bin.
Yes, this can be quite confusing, and especially confusing is that in the
LO build directory, when actually built, these programs are not called
soffice.exe and soffice.bin, but, if I recall correctly, what gets installed
as soffice.exe is called officeloader.exe and what gets installed as
soffice.bin is called soffice.exe. (And additionally, there is even a
another copy of that soffice.exe (i.e. the eventual soffice.bin) called
soffice_oo.exe. I am not kidding, one could not make this stuff up. Of
course, this is not our bright idea, but legacy from OpenOffice.org. We
should change it at some point to be less confusing.
And anyway, typically you shouldn't be starting soffice.bin from the
debugger as then the environment setup that the wrapper soffice.exe does are
not done and it will not find its DLLs. You should just start it normally
from Explorer, just the Start Centre, and then attach it from the debugger,
set your breakpoints, and use it so that the breakpoint gets hit.
Note that you don't need to quite Visual Studio between different runs of
LibreOffice- You can just detach or terminate the debuggee from VS, rebuild
more stuff with debugging if you want, copy the this rebuilt DLLs into
place, start it again (normally, from Explorer), attach soffice.bin again.
The same breakpoints will be remembered.
3. Open a file I want to debug(window.cxx) and set breakpoint at the
ImplUpdateGlobalSettings function.
That is correct, yes. And as long as you are debugging the right program,
soffice.bin, it will work.
--tml
Privacy Policy |
Impressum (Legal Info) |
Copyright information: Unless otherwise specified, all text and images
on this website are licensed under the
Creative Commons Attribution-Share Alike 3.0 License.
This does not include the source code of LibreOffice, which is
licensed under the Mozilla Public License (
MPLv2).
"LibreOffice" and "The Document Foundation" are
registered trademarks of their corresponding registered owners or are
in actual use as trademarks in one or more countries. Their respective
logos and icons are also subject to international copyright laws. Use
thereof is explained in our
trademark policy.