babgVant,
I just noticed your post about version 1.0.9.7 coming in a week (or so…). For the past month I have been making extensive changes to the Commercial Skip Addin source code. I’m in the final stages of debugging it and will be able to post it soon (hopefully in about a week). I was hoping to have my changes completed before you posted your next version, but it looks like I’m a little late. I’m tracking down a few of the final bugs and I still need to create some documentation. Below are some of the highlights of the changes (sorry, the notes are rough I haven’t cleaned up my development notes yet. I’ve included the package just incase you want to check it out. If you are going to try my version please remember two things. First, you have to update the MediaState object (as I noted below, I found a few bugs in the old version that seem to be fixed in the new version). I’ve included the new MediaState in the attached zip file. Second, you have to unregister your version of CommercialSkip before registering my version. Since I had to create my own .snk key file the XML file had to change to my PublicKeyToken.
If you are interested in including the work I’ve done in your new package please let me know. I’ll be happy to post the source (or package it, whatever works better for you) once I clean up the remaining bugs. If you would like to send me the latest changes you’ve made, I’ll be happy to incorporate them into the source I have. Or, when I’ve completed my debugging you can take my source and merge it into your source. Bottom line, I’m asking is there anyway we can work together on this?
1) Used the new mcegraph class from Toub that is compatible with Rollup2 (he fixed an infinite loop problem he had in GetCurrentMediaInfo()). This should fix the problem in start() where the filename is never returned and the lock is never removed from commXmlLock.
2) The Addin will ignore the Left and Right keys during Live TV.
3) The Addin now works with MCE Extenders.
4) Added dialog boxes to notify user when they turn on and off AutoSkip. The dialog box will timeout after 5 seconds.
5) Created method for Registry Lookups and loading them every time Stop() is called. This way AutoSkip returns to the default state every time someone starts a show.
6) Added a registry setting \LocalMachine\software\DvrmsToolbox keyword "Logging" to turn on or off Logging. By default Logging is off. To turn on Logging add a DWORD value and set it to 1
7) Added a registry setting \LocalMachine\software\DvrmsToolbox keyword "OnMSASEventLogging" to turn on or off Logging of the OnMSASEvents. By default Logging is off. To turn on Logging add a DWORD value and set it to 1. Warning, turning this on is good for Debugging, but it is VERY verbose. Please make sure you have set your EventLog to accept A LOT of entries.
8) Even if we can't skip forward because we are at the end of the show, we should allow it to skip backwards. Also added some dialog boxes to let the user know if they are trying to skip past the end of the show.
9) Created a new registry key \LocalMachine\software\DvrmsToolbox keyword "SkipDisplayType". This key is a type string with two values. "skipbar" (no quotes) will cause the Trackbar to show the time before the skip and after the skip. The disadvantage to this solution is it delays the skip. "skipbox" (no quotes) will show a message box telling you how many minutes and seconds it skipped. "Classic", or not having the key, will work the old way where the trackbar only shows up after the skip.
10) Created a new registry key \LocalMachine\software\DvrmsToolbox keyword "SkipBoxMinMinutes". Create this registry key as a DWORD and enter the minimum number of minutes. If the skip segment is under this number of minutes the SkipBox won't display. If the skip segment is over this number of minutes, then the skip box will display.
11) Created a new registry key \LocalMachine\software\DvrmsToolbox keyword "SkipMaxMinutes". Create this registry key as a DWORD and enter the maximum number of minutes a skip is allowed. If the skip segment is greater than this number of minutes the skip won't happen (I use this to tell if a skip is too large and I'm going to skip over a section of my show).
12) To turn AutoSkip off the registry setting \LocalMachine\software\DvrmsToolbox keyword "AutoSkip" must be set to a zero "0". To turn on set to a one "1".
13) Changed the MediaState object to version 6.0.3000.0 (the one included in the latest MCE development kit). I discovered a few bugs in the old version that seem to be fixed in the new version.
14) Cleaned up quite a few bugs.