Skip to main content
deepakr46023445
Participant
March 13, 2019
Question

Integrating Desktop AIR application with Windows desktop application

  • March 13, 2019
  • 1 reply
  • 664 views

We are having a desktop application exe built and packaged using AIR.

There is a requirement this application (AirWinApp) needs to be integrated with a windows desktop application (DotNetWinApp).

Any help regarding this would be highly appreciated since it will help us in making a decision.

This topic has been closed for replies.

1 reply

Inspiring
March 13, 2019

an Adobe AIR desktop app is a standalone app (it own its own window)

either you have 2 windows AIRWinApp and DotNetWinapp that communicate with each others:
many way to do that socket connection, shared memory, etc.

or you want to embed one into another
you could embed the AIRWinApp into the DotNetWinApp using ActiveX

you would embed a SWF with the ActiveX
the SWF use ExternalInterface to talk to the DotNetWinApp
the SWF would have the Flash API available (not the AIR API)


other way would be to embed the SWF into HTML and use a web view in DotNetWinApp

deepakr46023445
Participant
March 13, 2019

We need to embed AIRWinApp into DotNetWinApp. However, problem with ActiveX/HTML and ExternalInterface is that externalInterface needs FlashPlayer and support for Flashplayer is ending in 2020.

Whats the best option to embed AIRWinApp into DotNetWinApp without ExternalInterface ?

Inspiring
March 14, 2019

In a very quickly fast Google Search I found this: Hosting EXE Applications in a WinForm project - CodeProject

You can also embed the exe as resource, export to temp folder and run as a process.

Something like this:

byte[] exeBytes = Properties.Resources.myApp;
string exeToRun = Path.Combine(Path.GetTempPath(), "myApp.exe");

using
(FileStream exeFile = new FileStream(exeToRun, FileMode.CreateNew))
  exeFile
.Write(exeBytes, 0, exeBytes.Length);

Process.Start(exeToRun);

This is a generic concept. Don't forget that there are files that your AIR app depends on.

So you have 2 options:

1. Inside a Windows Forms (as if AIR app was a .net App but is not)

2. Run as a independent process and your main .net App it's like a truck.

This seems so trojan and you probably will be blocked by antivirus.