Can't set breakpoints anymore (1 Viewer)

MJGraf

Retired Team Member
  • Premium Supporter
  • January 13, 2006
    2,478
    1,385
    Sorry guys, I have to prove once more that I'm a noob in programming...

    Since last night, I can't set breakpoints anymore. What I did in the meantime is delete the whole local git repository and I did a fresh pull. Then I switched to the dev-branch and opened MP2-Server in VS 2010. The config is set to x86 and debug. I started debugging and set a breakpoint, but it says something like (translated from German):

    "The breakpoint is currently not reached. For this document no symbols were loaded."

    This happens no matter in which project / class / line I set the breakpoint. The pdb-files are in the respective directories, where the dlls are as well.

    Can anyone help me out?

    BTW: When I opened the freshly pulled MP2-Server in VS for the first time, the "startproject" was set to MovieMetadataExtractor. I had to set it to "Mediaportal.Server" manually.

    Thanks,
    Michael

    -------------------------------

    Sorry, seems like I can set breakpoints in some projects such as MediaPortal.Core or UPnP. But I can't e.g. in IsoResourceProvider or in all the MetadataExtractors...

    ---------------------------------

    ok, just in case there are more noobs like me trying to fiddle around with debuggin: The dll and its symbols are only loaded when this dll is used for the first time. So just ignore that message and trigger something, which should lead you to your break point. Then the message should disappear.

    Sorry for bothering - I should read before posting ;)
     

    Albert

    MP2 Developer
  • Premium Supporter
  • February 18, 2008
    1,297
    1,130
    46
    Freiburg im Breisgau, Germany
    Home Country
    Germany Germany
    AW: Can't set breakpoints anymore

    Normally, those breakpoints in code where the symbols are not loaded yet are no problem.
    When you run a project when breakpoints are set anywhere, VS checks, if the code compiled from the sources where your breakpoints where set, is loaded. All "standard" dlls, which are directly referenced by the main project MP.Server or MP.Client, are loaded at once. That's why all code of those projects is loaded at startup. But those projects, which are MP2 plugins, like the ISO resource provider, are loaded dynamically by MP2 when the plugin is activated. VS notices that the DLLs are not loaded at startup and knows the code is not loaded yet. It notices when the DLL is loaded and updates the breakpoint states at the appropriate time. A "transparent bullet" breakpoint means the DLL is not loaded yet, while a read breakpoint shows that the underlaying DLL is loaded. That's absolutely normal.

    And it's normal too that you need to set the main project. That setting is not included in the solution file; it's a local setting for VS.
    It should not be necessary to do a fresh re-checkout of the complete git sources. To reset everything, it's enough to reset all local changes via git and do a "Clean solution" via the VS context menu of the solution node in the Solution Explorer. That deletes all bin and obj folders of all solution projects, which makes VS do a recompile and a complete update of the "MediaPortal/Bin" output folder for each plugin, which normally is enough. But if plugins were removed from the solution, the plugin directories remain in the "MediaPortal/Bin" output folder. That's one of the rare cases when it is also necessary to delete the output directory "MediaPortal/Bin".
     

    Users who are viewing this thread

    Top Bottom