In my folder there are both commands, while BatchRotate is the name of just one of them. Can I zip the folder and rename it to Plugin.rhi anyway? Or should I make a plugin for each command? Also Should I zip the \Dev folder or the content of it? I tried with just the content and I get the error
03/30/2022 09:51:11 6740 Info Start: rhiexec
03/30/2022 09:51:11 6740 Info arguments:
03/30/2022 09:51:11 6740 Info Logging started: 2022/03/30 09:51:11
03/30/2022 09:51:11 6740 Debug Unknown InstallerDialog_Load starting (0%)
03/30/2022 09:51:11 6740 Debug Unknown InstallerDialog_Load ending (0%)
03/30/2022 09:51:11 6740 Debug Unknown ShowInitializationDialog starting (0%)
03/30/2022 09:51:11 6740 Debug Unknown ShowPanel starting (0%)
03/30/2022 09:51:11 6740 Debug Unknown SwapPanel starting (0%)
03/30/2022 09:51:11 6740 Debug Unknown SwapPanel ending (0%)
03/30/2022 09:51:11 6740 Debug Unknown ShowPanel ending (0%)
03/30/2022 09:51:11 6740 Debug Unknown ShowInitializationDialog ending (0%)
03/30/2022 09:51:11 6740 Info Initializing INIT START: (0%)
03/30/2022 09:51:11 6740 Info Unknown Package not recognized as Localization Package (0%)
03/30/2022 09:51:11 6740 Info Unknown Found 0 plug-ins (0%)
03/30/2022 09:51:11 6740 Info Unknown Recognized payload as Python plugin (0%)
03/30/2022 09:51:11 6740 Info Initializing Initializing Installer (0%)
03/30/2022 09:51:12 6740 Error Exception: System.ArgumentException
Message: Version string portion was too short or too long.
StackTrace: at System.Version.VersionResult.SetFailure(ParseFailureKind failure, String argument)
at System.Version.TryParseVersion(String version, VersionResult& result)
at System.Version.Parse(String input)
at System.Version..ctor(String version)
at RhiExec.PythonPluginInfo.LoadPluginPyFile(String plugin_py)
at RhiExec.PythonPluginInfo.Initialize(Package package)
at RhiExec.InstallerPythonPlugin.Initialize(AsyncReporter progress)
at RhiExec.Engine.Engine.Init(String packagePath, AsyncReporter progress)
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
03/30/2022 09:51:12 6740 Debug Unknown ShowPanel starting (0%)
03/30/2022 09:51:12 6740 Debug Unknown SwapPanel starting (0%)
03/30/2022 09:51:12 6740 Debug Unknown SwapPanel ending (0%)
03/30/2022 09:51:12 6740 Debug Unknown ShowPanel ending (0%)
Here is screenshot of my folder with __plugin__.py open
I would highly recommend writing your python scripts as normal scripts and use the script compiler that ships with Rhino to compile these scripts into a plug-in with commands. RHI is no longer the recommended approach to plug-in distribution. The script compiler will create an rhp and a yak package that can be published to the package manager. If you really want an rhi, you could use the rhp created by the script compiler.
Thank you, I use it to create scripts, then turn them into commands. I would like to make a rhi plug in to pass my scripts to my less tech savvy colleagues. So they can just double click on The installer and get the commands.
Thank you again.
@dale I think this has been discussed in the past, the Package Manager is not ideal for my plugin - it has a tiny usage base right now of 3 people. It makes much more sense to have some form of drag and drop installer available. Was there any thought or work being put into a solution closer to the .RHI format?
You can use a .yak package almost just like a .rhi file. You can drag and drop it on top of a running Rhino 7 (or later), or you can install it using the scripted PackageManager command, as mentioned above.