Hi everyone,
I'm encountering an issue with a QAction failure on a specific element and was hoping for some guidance.
When attempting to run a QAction, the process consistently fails with the error code 0x8004022D. Checking the logs, I see a preceding error indicating that the assembly type could not be found.
2026/05/12 09:19:52.011|SLManagedScripting.exe|ManagedInterop|ERR|-1|100|Could not find assembly type (QAction)
2026/05/12 09:19:52.011|SLProtocol - 12008|8552|CQAction::Run|ERR|-1|QAction [15] triggered by [pid=2500/idx=-1/pk=/user=] failed. (0x8004022D)
I've found a previous community post regarding similar error codes (0x8004022D and 0x800402A4) and followed the suggestions there, but unfortunately, it hasn't resolved the issue in my case.
DataMiner (10.5.2.0-15384)
Hi Tarik,
The exception here "Could not find assembly type (QAction)" seems to indicate that the QAction does not have a class named QAction. In this case it seems to be QAction 15 in the protocol for that particular element.
The presence of this class is needed as well as a function with the name "run" as this is what DataMiner looks for to invoke when running Qaction.
Source:QActions | DataMiner Docs
The default entry point of the QAction is the static Run method of the QAction class. The entry point method has a parameter of type SLProtocol, which serves as the link with the SLProtocol process (the QAction is executed by the SLScripting process).
To fix this you will need to adapt the code so it has the correct structure (default this would be)
public static class QAction
{
public static void run(SLProtocol protocol)
{
}
}
Other entry methods are available, see Entry point methods | DataMiner Docs for more info on this.
In that case the compilation of the QAction to the DLL may have failed in some way. You can try the following
-Re-upload the protocol
If that does not fix it
-Stop the DMA
-go to "C:Skyline DataMinerProtocolScripts"
-Find the QAction dll (<procotolname>.<version>.QAction.<QactionID>.dll
-Remove that file
-Start the agent.
If it still does not work, best to contact support. The following info will be useful
-The protocol that fails,
-A delt export of the element
-A dump of SLProtocol and SLScripting where the element resides in.
I've tried reuploading the protocol and restarting the DMA, that didn't work.
When go to the "C:Skyline DataMinerProtocolScripts" I can't find any DLLs regarding this protocol (the protocol has ~15 QActions)
I'm not sure why there are no DLLs present
Hi Tarik,
The "Could not find assembly type (QAction)" message usually points more to an assembly loading/resolution problem than to the QAction logic itself.
Also worth checking:
- was the connector recently upgraded?
- were QAction namespaces/class names changed?
- does creating a fresh element with the same protocol reproduce the issue?
If a newly created element works fine, that would strongly suggest element-specific cached state rather than a protocol issue.
Kind regards,
I don't think that could be the issue, QAction was generated with the DIS snippets. QAction and Solutions builds without issues