Community
Maya Programming
Welcome to Autodesk’s Maya Forums. Share your knowledge, ask questions, and explore popular Maya SDK topics.
cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Can't load my Plug-In: "The specified procedure could not be found."

5 REPLIES 5
Reply
Message 1 of 6
Anonymous
12693 Views, 5 Replies

Can't load my Plug-In: "The specified procedure could not be found."

Hello everyone.

I'm currently developing a C++ Plug-In for Maya 2013 64bit.
Since some completely random(*) point during development I cannot load my plugin anymore.


loadPlugin "myPlugin.mll";
// Error: line 1: Unable to dynamically load : C:/path/to/myPlugin.mll
The specified procedure could not be found.
//
// Error: line 1: The specified procedure could not be found.
//
// Error: line 1: The specified procedure could not be found.


I've had similar problems before, and usually was a missing .DLL file or a .DLL file with a different version.
So I looked at it with DependencyWalker, but I see nothing new (**).
I try to mix around some .DLL files (***) but with no luck.

Isn't there any way I can find out which procedure Maya can't find?


* (I have done no particular changes, and trying to revert my changes doesn't make it go away.)

** (I admit: DependencyWalker always has something to complain, like "not finding a InternetExplorer related .DLL that Kernel32.DLL requires". But that never kept me from running the plug-in.)

*** (When I had similar errors earlier, it was that Maya could not find MSCRT80.DLL or similar things).
5 REPLIES 5
Message 2 of 6
Anonymous
in reply to: Anonymous

Hi,

I had a similar problem once, and if I remember correctly that was not related to the mll itself, but to the system PATH variable that had been changed for some reason. Maya would find my mll, but since this mll linked to another dll that was no longer in the PATH, the plug-in could not be loaded.

Hope this could help

: I found the error Maya sent me in my case, which is slightly different from yours:

// Error: Unable to dynamically load : .mll
The specified module could not be found.
//
// Error: The specified module could not be found.

Maybe Maya can't find a MEL script going with your plugin. If any, is your MAYA_SCRIPT_PATH environment variable set?
Message 3 of 6
Anonymous
in reply to: Anonymous

Thank you for the reply.

I checked the PATHs, but there is nothing missing.
The plug-in does not use any scripts.

As far as I understand it, "The specified module could not be found." indicates that a required .DLL file could not be found,
and "The specified procedure could not be found." means that the DLL was there, but it didn't contain the required procedure.
That could happen if the file version differs (*) or if the machine type differs (**).

I have tried monitoring the Maya process with Process Monitor. I can see it load the various .DLL libraries, but it does not show any failed attempts to load procedures.

I'm sure I could figure out what is wrong if I just knew the name of the procedure that Maya can't find. I'm a bit upset about the lack of information in this error message.



(*) I've had that issue, trying to include the boost C++ library in my project, because both boost and Maya use Intels "Thread Building Blocks" libraries, but in different versions. My current plug-in does not use boost anymore.

(**) I think when trying to load a 32bit .DLL in 64bit mode, then windows will just tell you that the required procedure was not found in the file. But I'm not sure if this is correct.
Message 4 of 6
Anonymous
in reply to: Anonymous

Ahh, got it.
Seeing Maya load only its own DLLs in Process Monitor, I figured it must be the Maya .DLL files themselves.

Apparently switching between versions of the project (I started with Maya2011) I accidentally overwrote the Linker settings, and it would link the plug-in for Maya2011.
Of course that conflicted when Maya2013 tried to find the called procedures in its own .DLLs.

Still I would really like to know if there was any way to make Maya more verbose about its library loading progress.
If it would print out names of files and procedures, it could help save a lot of time trying to figure out what is wrong.

This cryptic error message has cost me a lot of time - and more than once...
Message 5 of 6
m.fratczak
in reply to: Anonymous

hey !
dependencywalker is a nice tool that shows missing DLLs for your binary files. Highly recommended 🙂
Message 6 of 6
Anonymous
in reply to: Anonymous

Thanks for the reply. As mentioned above: I used dependency walker to figure it out.
It's really a nice tool, but since it has a different way of searching for .DLLs, it doesn't always lead you to the real source of the problem.

Can't find what you're looking for? Ask the community or share your knowledge.

Post to forums  

Autodesk Design & Make Report