0

I'm working on an AIR app that uses a Native Extension for windows that I developed for the same project. The app calls an ANE method called pingFunction and passes it a String containing the IP address where the pingFunction will perform, believe it or not, a ping test.

The application and it's ANE work great on Flash Builder and even after making it a release, they keep working like a charm on the development PC. The problem is that I've tried on two other computers and the application is throwing the following error:

ArgumentError: Error #3500: The extension context does not have a method with the name pingFunction. 
at flash.external::ExtensionContext/_call() 
at flash.external::ExtensionContext/call() 
at com.mycompanyname.myappname::MyAppName/sendPing()[...  

At the beggining I thought I had to do with the fact that I was using a DLL I compiled using the Debug configuration on Visual Studio instead of the Release configuration, because I read that sometimes the a debug-version of a DLL can use external DLLs. So, I changed it and rebuilt the whole library as a release build. Sadly for me, I'm still experiencing the same result.

Also, I tried changing the swf-version of both the AIR app and the ANE to the AIR SDK version I'm using (14.0), and got again the same error.

The development computer is running Windows 8.1 and the others, where the app is not working, Windows 7 and Windows 7 Service Pack 1.

Any ideas about why this is happening? Any questions or comments that might lead me to the right track will be deeply appreciated.

Storo
  • 988
  • 1
  • 7
  • 31
  • DLLs for Windows ANE have to be in the same folder as the application, iirc. –  Jun 08 '15 at 19:02
  • @DodgerThud Hi, what do you mean with "in the same folder"? What should be in the same folder? Becuase the ANE should be linked from the `libs` forlder and the rest of the app is within the `source` folder. – Storo Jun 08 '15 at 19:17
  • I mean in your install location, where the user installs it, specifically the folder where the .swf resides I believe. At least that's how I remember it, I'll look up my own Windows ANE at the office tomorrow. –  Jun 08 '15 at 19:31
  • @DodgerThud Thanks. I would appreciate that. But shouldn't the ANE be packed by Flash Builder and installed automatically? – Storo Jun 08 '15 at 19:38
  • Yeah, that's how it 'should' work, but I remember there being something about Windows ANE that is a little bit different. Although that could be for external DLLs instead (as in, DLLs not made by yourself). –  Jun 08 '15 at 19:39
  • Sorry buddy, I couldn't find anything in my own projects. –  Jun 09 '15 at 05:33
  • @DodgerThud A pitty but thanks anyway. – Storo Jun 09 '15 at 12:50

1 Answers1

0

Error#3500 is coming because you don't have the required runtime installed on those machines, which is necessary to execute any c++ code .
On your development machine you have visual studio installed and hence you also have msvcr.

Solution of the problem is:

Install msvcr i.e. Microsoft Visual c++ redistribution - 2012 from here.

you need msvcr anywhere you want to run any VS compiled c++ code.


not-a-robot
  • 321
  • 1
  • 14