Jump to content
LaunchBox Community Forums

GreenF

Members
  • Posts

    15
  • Joined

  • Last visited

Everything posted by GreenF

  1. Thanks! Looking forward to an extensive plugin framework. Would be awesome for LB.
  2. Thanks! You were right, it was that. I think the cause of that was running "skraper" (https://www.skraper.net/) to get data from ScreenScraper. Thanks! Btw, I wanted to write a plugin for ScreenScraper for LB (that's before I found skraper), but I didn't see any plugin interface for media scraper. Any plans to do that?
  3. Hey, I am deleting a few games from my LaunchBox (mame games). The game files have been deleted as well. After a while I notice that the games are getting back into the games list. What am I missing? Thanks!
  4. Maybe I missed something, but I didn't find any tutorials. There's documentation for the DLLs, or code samples I found in github, but no tutorial on how to create a plugin. Same for the installation, I figured I need to copy only by finding posts in the forum (and seeing the plugin dir). The other thing is once I had some issues in the beginning (like using .net 8), I tried looking at existing installed plugins (i.e. plugins directory), which were only the stock ones and all of them have the manifest file. Once I placed a manifest file it added my plugin to the manager, which looked like I was on the right track. Also, I assumed that if I had done something wrong, I would see it in the log. Anyway, I just think that you guys should write a small official getting started guide with prerequisites (like .net 6), the dlls that should get referenced and how to install the plugin. Otherwise we'll get into guessing in case we're doing something wrong and that may lead to lots of funny stuff. It is also a place to publish updates or changes you might do in the plugin system. But again, just a suggestion 😁
  5. That's also a valid option, but how would I know not to add? Anyway, just making some suggestions to help out the community here 🙂. I'll work on my plug in next weekend. Thanks guys, especially you Joe.
  6. Thanks for clearing that out! Can I ask which interfaces? Also, if you don't find any interfaces in a plugin, I think you guys should display some error, or at the very least write it to the log (maybe you do, but I didn't see such a record).
  7. Oh My God YOU FOUND THE BUG! 👏👏👏👏👏 It's the manifest.json ! Feels like the Unbroken guys tried some "if-patching" for their own built-in plugins (that's of course a very wild guess, but yours was spot on(!) so who knows?! 😊 ) Thanks Again Joe the Viking!
  8. And the plot thickens... I guess it's something in my environment, as with the plugin you uploaded I still get: I'll check it out during the weekend.... Thanks a lot for your help! I will update once I figure it out. Btw, about: I meant .NET states they don't have backward compatibility (at least in their documentation). Well, clearly as we see they are loading DLLs from different frameworks so I guess they are compatible to so to some degree (as you wrote), but I guess .NET team just let things run and they just state that "it might not work". Thanks again!
  9. Okay, Starting from scratch. I created a whole new solution, added .net 6 class library, referenced to Microsoft.Win32.SystemEvents, System.Drawing.Common and Unbroken.LaunchBox.Plugins from "core\" dir. Compiled (I must add - without warnings!) Copied to "LaunchBox\Plugins\TestPlugin\" And..... Launchbox doesn't show any menu item on right click 😞 I'm adding my solution (which is pretty much empty).... TestPlugin.zip I have a feeling like I am using the wrong .NET. There's something is still an enigma to me (I'm mainly a C/C++ dev, not .net). I downloaded a plugin (that work!) and decompiled it to inspect. It was compiled in .Net framework 4.8 (latest .net framework), which is supposed to be incompatible with .NET 6 (previously .NET Core 6 as I understand), and that plugin still reference to Unbroken.LaunchBox.Plugins.dll successfully, which is, as you said, compiled in .NET 6 (not .net framework...). 😵‍💫🤯
  10. Sorry, it wasn't a warning but an error: The warning states that there is a conflict between: There was a conflict between "System.Drawing.Common, Version=6.0.0.0.... " (used by me, choosing .Net 6) and "System.Drawing.Common, Version=7.0.0.0....." in the error, CSC says: "Assembly 'Unbroken.LaunchBox.Plugins' ..... uses 'System.Drawing.Common, Version=7.0.0.0....' which has a higher version than referenced assembly 'System.Drawing.Common' ... '... Version=6.0.0.0...'. Basically, when I'm compiling with .Net 6, I am using System.Drawing.Common v6, which conflicts with 'Unbroken.LaunchBox.Plugins' that uses v7 (thus, as far as I understand, Unbroken.LaunchBox.Plugins compiled with .Net 7). Switching to .Net 7 resolves the error. Got it 🙂 Yeah, didn't see much over there... Btw, DebugView (DebugView - Sysinternals | Microsoft Learn) is a Microsoft tool (originated from Sysinternals) so see logs from the whole system, including system applications and drivers. It is quite noisy (but you can filter and color using patterns, that's why I used all the "++++" symbols in the log), but it is an excellent tool when there's no console and you want to see things in real-time (especially when you write system applications or drivers). Honestly, I am a bit stuck. Maybe it is something in my environment so later on I'll try in a clean environment (i.e. a virtual machine). UPDATE: Didn't work in a virtual machine either. Obviously at the end it would be something silly we should've thought about right from the beginning 🙂 . If you have any other ideas, I'd be more than happy! Thanks again for all the help.
  11. Using .Net 6 produces a conflict warning as Unbroken.LaunchBox.Plugins.dll has compiled with .Net 7, so I'm trying .Net 7. Also, about the Debug.WriteLine(), I used OutputDebugView to see the logs in DebugView so I don't need to attach VS to LB. But just for the sake of it, I removed all the logs completely and check if I see a menu item. I also tried to "run as administrator". Also tried bringing the dependencies to the same plugin library (i.e. Unbroken.LaunchBox.Plugins.dll) None worked. Taking a wild guess here, I see all the "stock" plugins have a naming convention (for obvious reasons), like "Unbroken.LaunchBox.Windows.RetroArch.dll". In my case, it's just "testplugin.dll". I know it's far-fetched, especially as the plugin has been loaded (verified with process explorer), but.... maybe?! I'll check in LB if there are some extra-logs I can pull out.
  12. sure. attaching. As you'll see in the code, I've also tried to write to OutputDebugString, just to make sure if anything happens here. Also, notice I'm targeting to .Net 8 and OS Version 7. Thanks for your help! Hopefully I just have a silly bug. main.cs
  13. Hey everyone, I'm trying to write a plugin to LB and I've looked at the plugin examples. I wrote a VERY basic plugin just to see that it works (IGameMenuItemPlugin that practically does nothing besides writing logs that it is loaded). I should point out that the examples did not discuss about the manifest.json, so I took one from existing plugins and updated the GUID (and placed "null" for tags). The problem is that I can't get it to work. I see the plugin in the "plugin manager", and the DLL is loaded into LaunchBox, but none of the properties nor methods are being called (let alone actually see a menu item...). Can anyone help with that? Maybe something changed since older versions (the examples are quite old)? Any assistance would be great 🙂 Thanks!
×
×
  • Create New...