NextPVR Forums
  • Home
  • New Posts
  • Wiki
  • Members
  • Help
  • Search
  • Register
  • Login
  • Home
  • Wiki
  • Members
  • Help
  • Search
NextPVR Forums Public Developers v
« Previous 1 … 25 26 27 28 29 … 93 Next »
GB-PVR rec. service locks my classlib

 
  • 0 Vote(s) - 0 Average
GB-PVR rec. service locks my classlib
bgowland
Offline

Posting Freak

Posts: 4,535
Threads: 376
Joined: Dec 2004
#1
2009-02-12, 09:39 PM
The title says it all really. I discovered recently that when I try to copy a new version of the DvbrLib.dll into the plugins\DvbRadio folder, Windows tells me the file is 'in use' by another person/process. I found out I have to stop the GB-PVR recording service to allow the file to be copied.

I'm not sure what I've changed in my code or how this can possibly be happening. The dvbr solution consists of the plugin itself, the dvbr service (Windows Service) and the DVbrLib.dll which is purely for shared classes (collections and datasets etc. which both the plugin and service use).

What's really odd is that simply restarting the gbpvr rec. service still won't allow me to copy the dvbrlib.dll in - as if the rec. service stops/starts and regains its lock. I have to stop the rec. service, copy the dll then restart the rec. service.

What is there in the rec. service that would maintain an open handle on a plugin's class library.

Cheers,
Brian
sub
Offline

Administrator

NextPVR HQ, New Zealand
Posts: 102,394
Threads: 741
Joined: Nov 2003
#2
2009-02-12, 09:50 PM
The recording service loads plugins in the 'plugins' directory, looking for 'recording plugins'. It sounds like the garbage collection doesnt kick in to release the plugins it loaded to check for recording plugins, but didnt find any appropriate classes.
bgowland
Offline

Posting Freak

Posts: 4,535
Threads: 376
Joined: Dec 2004
#3
2009-02-12, 10:01 PM
sub Wrote:The recording service loads plugins in the 'plugins' directory, looking for 'recording plugins'.
OK, I didn't know that. So it will try all .dll files?

One thing I'm wondering about is that I created a static class in DvbrLib.dll to help pvrx2.exe resolve it as per psycik's suggestion in Post #6 here...

http://forums.nextpvr.com/showthread.php...post322989

Doing this has meant I no longer have to have dvbrlib in the plugins\Common folder. COuld this be the cause? (I've always been a bit 'grey' about static classes etc.)
psycik
Offline

Posting Freak

Posts: 5,206
Threads: 422
Joined: Sep 2005
#4
2009-02-12, 10:47 PM
sub Wrote:The recording service loads plugins in the 'plugins' directory, looking for 'recording plugins'. It sounds like the garbage collection doesnt kick in to release the plugins it loaded to check for recording plugins, but didnt find any appropriate classes.

orly??

I've found that it locks my MusicLibraryCommon.dll Always assumed that was by design for some reason. Didn't know it was looking for recording plugins.

What makes a plugin a recording one? What interface should it be using? Hopefully different to IMenuTask
psycik
Offline

Posting Freak

Posts: 5,206
Threads: 422
Joined: Sep 2005
#5
2009-02-12, 10:48 PM
bgowland Wrote:OK, I didn't know that. So it will try all .dll files?

One thing I'm wondering about is that I created a static class in DvbrLib.dll to help pvrx2.exe resolve it as per psycik's suggestion in Post #6 here...

http://forums.nextpvr.com/showthread.php...post322989

Doing this has meant I no longer have to have dvbrlib in the plugins\Common folder. COuld this be the cause? (I've always been a bit 'grey' about static classes etc.)

If you call your static method at constructor time, then yes you should be able to move the extra dll to the local plugin directory rather than common.
bgowland
Offline

Posting Freak

Posts: 4,535
Threads: 376
Joined: Dec 2004
#6
2009-02-12, 10:55 PM
psycik Wrote:If you call your static method at constructor time, then yes you should be able to move the extra dll to the local plugin directory rather than common.
That's what I was doing and it worked fine (no need to use plugins\common). I've removed that static class from dvbrlib now and the rec. service doesn't seem to be locking it any more but I'm having to use plugins\common again.
sub
Offline

Administrator

NextPVR HQ, New Zealand
Posts: 102,394
Threads: 741
Joined: Nov 2003
#7
2009-02-12, 11:32 PM
psycik Wrote:What makes a plugin a recording one? What interface should it be using? Hopefully different to IMenuTask
Its looking for IRecordingSource. It doesnt know what it'll contain until its loaded the DLL though.
« Next Oldest | Next Newest »

Users browsing this thread: 1 Guest(s)



Possibly Related Threads…
Thread Author Replies Views Last Post
  is there a service?method which returns listings for multiple channels? reven 16 4,422 2022-04-11, 04:30 PM
Last Post: mandai
  NextPVR "Service" Backend? jcole998 5 3,887 2018-05-24, 01:17 PM
Last Post: jcole998
  Transcoding service mvallevand 27 9,930 2016-08-26, 07:43 PM
Last Post: sub
  Time to make Touch web Service less experimental fred250 106 19,354 2014-06-15, 09:13 PM
Last Post: fred250
  New web service clarification needed bgowland 6 2,337 2013-10-19, 02:36 AM
Last Post: bgowland
  [REQ] Additional web service API calls reven 26 5,882 2013-08-31, 10:08 PM
Last Post: mvallevand
  getting recurring recordings from service?method API? reven 2 1,436 2013-08-03, 10:50 PM
Last Post: reven
  need some doc around service?methods reven 12 3,282 2013-07-25, 11:00 PM
Last Post: reven
  Creating a Windows service McBainUK 8 2,434 2011-03-30, 03:29 AM
Last Post: mvallevand
  SheduleRecording() locks database cb123 3 1,909 2009-02-14, 06:33 PM
Last Post: sub

  • View a Printable Version
  • Subscribe to this thread
Forum Jump:

© Designed by D&D, modified by NextPVR - Powered by MyBB

Linear Mode
Threaded Mode