Jump to content

You're browsing the 2004-2023 VATSIM Forums archive. All content is preserved in a read-only fashion.
For the latest forum posts, please visit https://forum.vatsim.net.

Need to find something? Use the Google search below.

Learning to write plug ins


Phillip Powell 1062160
 Share

Recommended Posts

Phillip Powell 1062160
Posted
Posted

Hi,

 

What do I need in order to be able to create a plug in?

 

phill

 

Please disregard, I've found what I was looking for.

EGGP_TWR 126.350

generate.php?mid=1062160

Old PID 849479

Link to comment
Share on other sites

  • 1 month later...
Blake Nahin
Posted
Posted

can you tell us where you found the answer? This would help some of us that are looking for answers

spacer.png

Blake Nahin

VATUSA Data Services Manager

https://vatusa.net

Link to comment
Share on other sites

Neil Farrington
Posted
Posted
can you tell us where you found the answer? This would help some of us that are looking for answers

 

I haven't really looked into making plug-ins for ES yet, it's halfway down my todo list. I would take a guess, however, that you need to know C++ and read the docomeentation on plug-in development included with ES (someone correct me if I'm wrong). Hope this helps.

Neil Farrington

VATSIM UK

Link to comment
Share on other sites

  • 4 weeks later...
Phill Powell 849479
Posted
Posted

Michael,

 

Humble apologies for the late post. I should have come back sooner.

 

Neil is absolutely correct, C++ and as he says, there is plug in development docomeentation installed.

 

In my case the path is C:\Program Files\CsernakGergely\Euroscope\Plugin Environment

 

Phill

Vatsim network supervisor

VATeud I1/VATeir local examiner.

Link to comment
Share on other sites

  • 2 weeks later...
Nils Hillmann 1069421
Posted
Posted

And as an addition, it is C++ together with the MFC (Microsoft Foundation Cl[Mod - Happy Thoughts]es) used. So it is very easy to develop with Microsofts Visual Studio (but not the Express Edition, you need the full I think) but it should be also possible with any different IDE. You should take a look at the sources of the delivered plugins for the main parts, and you have to link the EuroScopePlugInDll.lib against your plugin and include the EuroScopePlugIn.h into your project. In this header (.h) file are the cl[Mod - Happy Thoughts]es and methods described which EuroScope delivers to your plugin. (And which you can use in your coding to access EuroScope Data)

------

You can find plugins for EuroScope at http://es-pluginworld.nilshillmann.de/projects/

Currently available there:

- OCC Plugin Version 1.2 (Development approved by Gergely Csernak)

Link to comment
Share on other sites

Nils Hillmann 1069421
Posted
Posted

And if you need help or have questions to that, you can also contact me via skype (because I can't add it here in the profile data, drop me a pm to get my skype nick)

------

You can find plugins for EuroScope at http://es-pluginworld.nilshillmann.de/projects/

Currently available there:

- OCC Plugin Version 1.2 (Development approved by Gergely Csernak)

Link to comment
Share on other sites

Juha Holopainen
Posted
Posted

While MFC is used in ES and the example plugins, it is not required for plugin development. So the Express Edition can be used as well.

Link to comment
Share on other sites

Jake Saw
Posted
Posted

MFC can be quite handy though

 

I started with no experience in C++ (limited past experience with PHP and basic) at all and ended up writing TAAATSMod, so definitely have a go and see what you can come up with.

Jake

Developer - vatSys

image.png.3cc3dde479bc419c580ca959161ce25e.png

Link to comment
Share on other sites

  • 1 month later...
Michael Zazula
Posted
Posted (edited)

Hello,

 

I've tried to develop my first simple ES Plug In. I had no previous C++ knowledge, but I took it as a good oportunity to learn.

The plug in is written in Microsoft Visual C++ 2010 Express (I've installed Microsoft Visual C++ 2010 Redistributable Package).

I've compiled it without any errors.

The problem is that the Plug In won't load ("Failed to load....")

 

I've used the Dependency Walker to check that no DLLs are missing, but I've got another error:

 

Error: The Side-by-Side configuration for "{path to my plug in directory}EUROSCOPEPLUGINDLL.DLL" contains errors.

Warning: At least one module has an unrfesolved import due to a missing export function in a delay-loaded dependent module.

 

Any idea, what could be wrong?

 

Thanks in advance,

MJZ

Edited by Guest

Best regards,
Michael "Zulus" Zazula

1832284255_Beznazwy.png.8fdb60cd0b9a70a54b993f005487e8ca.png
Visit pl-vacc.org.pl  | Welcome to Polish virtual airspace!

Link to comment
Share on other sites

David Saunders 818672
Posted
Posted

Michael

 

I cant remember if your a Beta tester for ES, but if you are there has been some changes in the Naming convention so this may be a reason why it wont work

non-discript self importance signature

Link to comment
Share on other sites

Michael Zazula
Posted
Posted

No, I'm not in the beta team, I use "regular" ES 3.1d.

 

MJZ

Best regards,
Michael "Zulus" Zazula

1832284255_Beznazwy.png.8fdb60cd0b9a70a54b993f005487e8ca.png
Visit pl-vacc.org.pl  | Welcome to Polish virtual airspace!

Link to comment
Share on other sites

  • 2 weeks later...
Gergely Csernak
Posted
Posted

Michael,

 

ES itself is built with VisualStudio2005. And all the DLLs needed to run it is packed with the EXE. If you are using the same version you can just load the DLL wherever they are. But using VisualStudio2010 requires a different set of DLLs. You should put them to your path or to the same folder where you would like to load the DLL from.

Gergely.

EuroScope developer

Link to comment
Share on other sites

Nils Hillmann 1069421
Posted
Posted
Michael,

 

ES itself is built with VisualStudio2005. And all the DLLs needed to run it is packed with the EXE. If you are using the same version you can just load the DLL wherever they are. But using VisualStudio2010 requires a different set of DLLs. You should put them to your path or to the same folder where you would like to load the DLL from.

 

The following dll files are needed for the usage with a dll compiled by VisualStudio2010:

# mfc100.dll

# mfc100u.dll

# mfcm100.dll

# mfcm100u.dll

# msimg32.dll

# msvcp100.dll

# msvcr100.dll

 

You can find them in the redist directory of your VisualStudio. Only on the computer where VisualStudio2010 is installed you don't need to copy them to your plugin dll directory (or better is the euroscope main directory)

------

You can find plugins for EuroScope at http://es-pluginworld.nilshillmann.de/projects/

Currently available there:

- OCC Plugin Version 1.2 (Development approved by Gergely Csernak)

Link to comment
Share on other sites

Brendan Chen 943434
Posted
Posted
Michael,

 

ES itself is built with VisualStudio2005. And all the DLLs needed to run it is packed with the EXE. If you are using the same version you can just load the DLL wherever they are. But using VisualStudio2010 requires a different set of DLLs. You should put them to your path or to the same folder where you would like to load the DLL from.

 

The following dll files are needed for the usage with a dll compiled by VisualStudio2010:

# mfc100.dll

# mfc100u.dll

# mfcm100.dll

# mfcm100u.dll

# msimg32.dll

# msvcp100.dll

# msvcr100.dll

 

You can find them in the redist directory of your VisualStudio. Only on the computer where VisualStudio2010 is installed you don't need to copy them to your plugin dll directory (or better is the euroscope main directory)

 

Or is it possible to just download the redist.exe from microsoft for vs2010 and include that into the package? I know it'll be bigger than just including those files, but it would be more complete wouldn't it? Or does it not make any difference?

Brendan Chen

VATPRC Tech Support

You make the difference!

672A68079898-1_zps98cef54d.png

Link to comment
Share on other sites

Todor Atanasov 878664
Posted
Posted

I think it is just the same, you can choose what you want.

Link to comment
Share on other sites

  • 1 month later...
Michael Zazula
Posted
Posted

Hello,

 

Sorry, it's not so easy

 

I've developed a plug-in using MS Visual C++ 2010 Express edition.

 

PROBLEM

It works fine - but only on the computer which I've used to write it (so with MS Visual C++ Express installed)

On my second computer it crashes when I try to load it.

 

Dependency Walker gives:

"Error: The Side-bySide configuration information for {my plug-in} contains errors"

 

What I HAVE TRIED:

- I've installed Microsoft Visual C++ 2010 Redistributable Package - no success

- I've manualy placed files listed by Nils in previous post into the Euroscope main folder - also no success

 

The only thing I've noticed is that the error message has changed a little bit - earlier when I attempted to load DLL I got an error that DLL can not be loaded, but I was able to continue using ES without that plug-in, and now (most probably after installing the redistributable package) the message is "Euroscope has encoutered a problem and needs to close" and it crashes to Windows (I have to reopen ES).

 

Now I'm completly lost..

 

Thanks in advance for any help,

MJZ

Best regards,
Michael "Zulus" Zazula

1832284255_Beznazwy.png.8fdb60cd0b9a70a54b993f005487e8ca.png
Visit pl-vacc.org.pl  | Welcome to Polish virtual airspace!

Link to comment
Share on other sites

Todor Atanasov 878664
Posted
Posted

First to confirm that you are running the release version of your .dll file on the other PC, the debug will give you that error.

 

Also with a simple google search you can find this:

=> http://stackoverflow.com/questions/254076/error-the-side-by-side-configuration-information-in-blah-exe-contains-errors

Link to comment
Share on other sites

Michael Zazula
Posted
Posted

Hello,

 

Thanks Todor.

 

Yes, I had found that post before I've posted here. I'm using a release version of the plug-in.

 

The sole thing I've not tried from that post is:

After copying the respective policies and manifests into their respective "C:\WINDOWS\WinSxS\" folders , I got it working.

 

Sorry, I'm not a professional developer, I have no idea what are policies and manifest, so I don't understand what, from where and to where should I copy.

 

MJZ

Best regards,
Michael "Zulus" Zazula

1832284255_Beznazwy.png.8fdb60cd0b9a70a54b993f005487e8ca.png
Visit pl-vacc.org.pl  | Welcome to Polish virtual airspace!

Link to comment
Share on other sites

Todor Atanasov 878664
Posted
Posted

No worries, I'm not either and we all learn new things.

Link to comment
Share on other sites

 Share