Page tree

Search


    Recently Updated



    Latest Releases

 MediaPortal 1 1.15.0
            Releasenews | Download
 MediaPortal 2.1 Pre2 
            Releasenews | Download

This short guide will help all testers (and developers also) to create memory dumps of MP process when something nasty happens on C++ side and MP decides to bail out without any visible traces. Note that this should be pretty tester & HTPC friendly as it's not requiring Visual Studio to be installed on the PC.

Requirements

  1. Install Debugging Tools for Windows 32-bit Version or Debugging Tools for Windows 64-bit Version, depending on which version of Windows you are using.
  2. Create a directory called

    c:\MP_crash_dumps

    .

  3. Copy attached MS VC debug DLLs to MP root directory 

    On 15 Sep 2010, chefkoch requested that this content be reviewed and verified: "is this still needed? can we link to MS anywhere for those files?
  4. Change MP to use MPV/MPA mpeg2 codecs (also ffdshow for h264). Reason for this is that codecs are detecting the debug process presence and are refusing to load.
  5. Use debug version of TsReader.ax or any other C++ side component that is suspected to be causing the crash. You can find those debug version in mediaportal svn

    DirectShowFilters\bin\Debug

    trunk. At later stages we should have up to date debug binaries for all C++ components (including the symbol files 

    On 15 Sep 2010, chefkoch requested that this content be reviewed and verified: remove the  last sentence ?

Start debugging

You can run the command everytime using the run box and the command prompt or you create batch files to simply rerun the commands when needed.

MediaPortal: Catching the exceptions

  1. Start MP in windowed mode
  2. Goto START > Run > type

    cmd /k pushd "%ProgramFiles%\Debugging Tools for Windows (x86)\"
  3. In command prompt start

    cscript adplus.vbs -crash -pn MediaPortal.exe -quiet -o c:\MP_crash_dumps
  4. Make sure that new (timestamped) folder is created under C:\MP_crash_dumps
  5. Switch MP to fullscreen and do something...
  6. Wait for a crash and let the log & memory dump file to be created

MediaPortal: Pinpointing the code that causes a hang...

  1. Start MP in windowed mode (and do not go to full screen!)
  2. Goto START > Run > type

    cmd /k pushd "%ProgramFiles%\Debugging Tools for Windows (x86)\"
  3. In command prompt start

    cscript adplus.vbs -hang -pn MediaPortal.exe -quiet -o c:\MP_crash_dumps
  4. Do something and wait for a hang
  5. Check out the memory dump and logs

TVServer: Catch a channel scan crash

  1. Start SetupTv.exe
  2. Goto START > Run > type

    cmd /k pushd "%ProgramFiles%\Debugging Tools for Windows (x86)\"
  3. In command prompt start

    cscript adplus.vbs -crash -pn TVService.exe -quiet -o c:\MP_crash_dumps
  4. Scan for channels
  5. Check out the memory dump and logs

example batch file

@echo off

pushd "%ProgramFiles%\Debugging Tools for Windows (x86)\"

cscript adplus.vbs -crash -pn TVService.exe -quiet -o E:\TVServer_crash_dumps

Troubleshooting

_NT_SYMBOL_PATH environment variable

If you get the following warning, you have to set an environment variable.

WARNING!  An '_NT_SYMBOL_PATH' environment variable is not set.
  1. Goto Control Panel -> System.
  2. Switch to tab

    Advanced

    and click

    environment variables

    .

  3. Add a new variable to system level (2nd group).

    Name for variable: _NT_SYMBOL_PATH
    Value for variable: symsrv*symsrv.dll*f:\localsymbols*http://msdl.microsoft.com/download/symbols

On 15 Sep 2010, chefkoch suggested that this content is incomplete and needs to be expanded by defining a style for how to write down the name of variables and its content.
On 15 Sep 2010, chefkoch suggested that "HowTo set up an environment variable" be split into a separate page or sub pages and translcuded everywhere instructions on environment variables are required.

event log file

If you get one of the following errors you have to delete event log.

%ProgramFiles%\Debugging Tools for Windows (x86)\adplus.vbs(1259, 3) (null): Event log file is out of space.
%ProgramFiles%\Debugging Tools for Windows (x86)\adplus.vbs(1259, 3) (null): Die Ereignisprotokolldatei ist voll.
  1. Goto START -> Run -> type

    eventvwr.exe
  2. Choose

    Application

    -> right click ->

    Properties
  3. Change maximum log size to

    102400

    KB.

  4. Click button

    Delete log

    On 15 Sep 2010, chefkoch suggested that this content is incomplete and needs to be expanded by adding ""or empty log or remove log !?""
  5. Click OK, to close the dialog and start at point 2. again with

    System

    instead of

    Application

   

 

This page has no comments.