Open radubirsan opened 2 years ago
Can you manually install it from the shared runtime installer: https://airsdk.harman.com/assets/downloads/AdobeAIR.exe and once this is installed, the application installer should then work..
thanks
Yes that is what I meant, they cannot manually install Adobe AIR runtime. They get the "This application requires a version of adobe AIR which cannot be found...." when running the AdobeAIR.exe. I installed Windows 11 in VMWare and could not reproduce it but, we connected using TeamViewer to one of there laptops. Tried to download AIR Runtime from the link you shared and after running it we get the error.
That's quite odd! Do you know if there's already a version of AIR from Adobe that is installed, or anything within C:\Program Files (x86)\Common Files\Adobe AIR
I deleted everything, from Common Files, uninstalled anything from Adobe in control panel. Downloaded the shared runtime 33 ran it from command prompt ( with admin rights ) tries to add the -silent parameter also tried -uninstall and they all show the same popup
Found this in the common files folder. Deleted it. PS: tried downloading https://en.softonic.com/download/adobe-air/windows/post-download/v/32.0.0.125 and I get the same error
Okay thanks - so it looks like there's something in your Windows 11 implementation that is 'missing' which the AIR runtime depends on. I'm not sure why it works for us, presumably there are differences in the components that may be installed on different machines running Windows 11....
The way we'd normally investigate this is to use the "Dependency Walker" to load up the Adobe AIR.dll file, and see what libraries/symbols it says are missing. It's a bit slow/painstaking sometimes, so it would be simplest if we're able to reproduce it here, let me see if I can get a machine set up similar to your earlier mention of "Window 11 Por N 21H2 220000.434" (i.e. the Jan 11th update it seems)
Actually one thing that it may be worth doing: if you can download the AIR SDK for Windows, and extract that onto the Windows 11 machine, can you then go into a command prompt and navigate to the "bin" folder, and run "adl.exe"? It should just give you some usage instructions...
The other thing would be to check in the Windows\syswow64 folder that the following libraries are present - or just copy/paste this into a command prompt which will list the files, see whether there's a "File Not Found" message!
dir /b c:\windows\syswow64\kernel32.dll
dir /b c:\windows\syswow64\user32.dll
dir /b c:\windows\syswow64\ole32.dll
dir /b c:\windows\syswow64\oleaut32.dll
dir /b c:\windows\syswow64\winspool.drv
dir /b c:\windows\syswow64\winmm.dll
dir /b c:\windows\syswow64\oleacc.dll
dir /b c:\windows\syswow64\crypt32.dll
dir /b c:\windows\syswow64\ws2_32.dll
dir /b c:\windows\syswow64\gdi32.dll
dir /b c:\windows\syswow64\msimg32.dll
dir /b c:\windows\syswow64\advapi32.dll
dir /b c:\windows\syswow64\version.dll
dir /b c:\windows\syswow64\comdlg32.dll
dir /b c:\windows\syswow64\shell32.dll
dir /b c:\windows\syswow64\shlwapi.dll
dir /b c:\windows\syswow64\wininet.dll
dir /b c:\windows\syswow64\msi.dll
dir /b c:\windows\syswow64\urlmon.dll
dir /b c:\windows\syswow64\comctl32.dll
dir /b c:\windows\syswow64\mscms.dll
dir /b c:\windows\syswow64\secur32.dll
dir /b c:\windows\syswow64\dsound.dll
dir /b c:\windows\syswow64\iphlpapi.dll
dir /b c:\windows\syswow64\dnsapi.dll
thanks
Running adl.exe output:
C:\Users\Administrator\Downloads\AIRSDK_Windows (1)\bin>adl.exe Adobe AIR could not be found. Use "-runtime
All files are found:
C:\Users\Administrator\Downloads\AIRSDK_Windows (1)\bin>dir /b c:\windows\syswow64\kernel32.dll kernel32.dll
C:\Users\Administrator\Downloads\AIRSDK_Windows (1)\bin>dir /b c:\windows\syswow64\user32.dll user32.dll
C:\Users\Administrator\Downloads\AIRSDK_Windows (1)\bin>dir /b c:\windows\syswow64\ole32.dll ole32.dll
C:\Users\Administrator\Downloads\AIRSDK_Windows (1)\bin>dir /b c:\windows\syswow64\oleaut32.dll oleaut32.dll
C:\Users\Administrator\Downloads\AIRSDK_Windows (1)\bin>dir /b c:\windows\syswow64\winspool.drv winspool.drv
C:\Users\Administrator\Downloads\AIRSDK_Windows (1)\bin>dir /b c:\windows\syswow64\winmm.dll winmm.dll
C:\Users\Administrator\Downloads\AIRSDK_Windows (1)\bin>dir /b c:\windows\syswow64\oleacc.dll oleacc.dll
C:\Users\Administrator\Downloads\AIRSDK_Windows (1)\bin>dir /b c:\windows\syswow64\crypt32.dll crypt32.dll
C:\Users\Administrator\Downloads\AIRSDK_Windows (1)\bin>dir /b c:\windows\syswow64\ws2_32.dll ws2_32.dll
C:\Users\Administrator\Downloads\AIRSDK_Windows (1)\bin>dir /b c:\windows\syswow64\gdi32.dll gdi32.dll
C:\Users\Administrator\Downloads\AIRSDK_Windows (1)\bin>dir /b c:\windows\syswow64\msimg32.dll msimg32.dll
C:\Users\Administrator\Downloads\AIRSDK_Windows (1)\bin>dir /b c:\windows\syswow64\advapi32.dll advapi32.dll
C:\Users\Administrator\Downloads\AIRSDK_Windows (1)\bin>dir /b c:\windows\syswow64\version.dll version.dll
C:\Users\Administrator\Downloads\AIRSDK_Windows (1)\bin>dir /b c:\windows\syswow64\comdlg32.dll comdlg32.dll
C:\Users\Administrator\Downloads\AIRSDK_Windows (1)\bin>dir /b c:\windows\syswow64\shell32.dll shell32.dll
C:\Users\Administrator\Downloads\AIRSDK_Windows (1)\bin>dir /b c:\windows\syswow64\shlwapi.dll shlwapi.dll
C:\Users\Administrator\Downloads\AIRSDK_Windows (1)\bin>dir /b c:\windows\syswow64\wininet.dll wininet.dll
C:\Users\Administrator\Downloads\AIRSDK_Windows (1)\bin>dir /b c:\windows\syswow64\msi.dll msi.dll
C:\Users\Administrator\Downloads\AIRSDK_Windows (1)\bin>dir /b c:\windows\syswow64\urlmon.dll urlmon.dll
C:\Users\Administrator\Downloads\AIRSDK_Windows (1)\bin>dir /b c:\windows\syswow64\comctl32.dll comctl32.dll
C:\Users\Administrator\Downloads\AIRSDK_Windows (1)\bin>dir /b c:\windows\syswow64\mscms.dll mscms.dll
C:\Users\Administrator\Downloads\AIRSDK_Windows (1)\bin>dir /b c:\windows\syswow64\secur32.dll secur32.dll
C:\Users\Administrator\Downloads\AIRSDK_Windows (1)\bin>dir /b c:\windows\syswow64\dsound.dll dsound.dll
C:\Users\Administrator\Downloads\AIRSDK_Windows (1)\bin>dir /b c:\windows\syswow64\iphlpapi.dll IPHLPAPI.DLL
C:\Users\Administrator\Downloads\AIRSDK_Windows (1)\bin>dir /b c:\windows\syswow64\dnsapi.dll dnsapi.dll
TeamViewer 897 761 801 rpeiqmkf
Okay thanks .. so basically then, the AIR DLL has got a dependency upon a function within one of those libraries, but the library no longer has that function available.
Is it possible for you to use Dependency Walker please? The steps would be:
1) Download (probably the default = 32-bit) from https://dependencywalker.com/ (here's a direct link to the zip file) and extract the files somewhere.
2) Run the depends.exe and open the Adobe AIR.dll
file
3) Once it's loaded (which can take a while), dismiss the error dialog and then "collapse all" the libraries listed in the top left pane. Then you can just click on the "+" and have a list of the direct dependencies....
4) Select each of these direct dependencies in turn, and look at the top right pane where you should see a list of the imported functions with a green flag against each of them.
If there are any red flags i.e. functions that it's trying to import from a DLL that are missing, then we have our culprit, and we can switch to dynamic loading/detection of the symbols for that library....
See a picture of what we're looking for below...
many thanks
I loaded the AIR32 DLL, here is the result file, you can load it in Dependency Walker Adobe AIR.zip
I rand https://github.com/lucasg/Dependencies and got these missing dll errors:
Also found these in lower folders: EdgeGdiInitialize, ext-ms-win-gdi-edgegdi-l1-1-0.dll, False, None N/A, 6 (0x00000006), GetCapabilitySidsEx, ext-ms-win-security-chambers-l1-1-0.dll, False, None etc..
There are a lot of layers to dig down into, it will be time consuming to expand all possible Dll's. Again the issue is on at least 2 Brand new Windows 11 Laptops:
Can we schedule a time next week where we can give you remote access to try an fix this?
Hi You can likely ignore all those, they're finding odd dependencies that we don't actually have. The Dependency Walker didn't find any issues though (assuming that the loaded information that I see isn't actually checking the DLLs on my own machine...!) We can arrange a time for me to check directly if that works, the other thing I can try to do is create a quick utility that runs through these programmatically which may be simpler. thanks
Yes, I can install the utility, will wait for it, thank you
Okay so we now have a utility that goes through all the dependent DLLs and checks that they have the right functions where we load them by name (and that the ordinals haven't changed where we import those)... are you able to run this please, and if it fails then please let us know what the log says? You can just run it from a command prompt... if you also pass as an argument, the AIR DLL, then it will also try to load that and report the Windows error code...
e.g.
c:\> AIRDependencyCheck.exe "i:\SDKs\33.1.1.743\runtimes\air\win\Adobe AIR\Versions\1.0\Adobe AIR.dll"
thanks
Thank you! So there's the culprit: despite having the DLL in your Windows system folder:
ERROR: could not load DLL -> dsound.dll
The good news is that it appears this isn't actually used any more in AIR! The code and comments show that DirectSound was used in the past for early versions of Windows (up to XP?) but then they switched to a new audio method. The DirectSound code is still present hence this dependency, but we should be able to strip it out and remove that dependency without any impact on our current platform (Windows 7 upwards).
Thank you for the help finding this! Weird that it's a bit hit-and-miss with different Win11 machines...
Good to hear that you found the bug/solution. I can test if you have a beta AIR dll. Is there a way the client can fix this on there laptops?
Sounds like this may be a known issue (or at least, there are others experiencing the same problem). Reading up on the Windows 11 compatibility promise, all they say is that they'll work with the vendor to fix the issue, so I think this is one that we need to update... I'm curious as to why that DLL fails to load, it's not just that the symbols are changed but the library is failing when we call LoadLibrary on it. Not sure whether the Dependency Walker can give any information about it, I was wondering as a temporary workaround we could just create a new/dummy dsound.dll, which can be put into the same location as the executable. Not 100% sure whether that would work, I'll see if we can try it...
... okay yes this may work! See below for a zip containing a dummy "dsound.dll" which just has the two functions we need at the appropriate ordinals. If you can put this where the application .exe file is, it should work. So if you're packaging up an application using a "bundle" and the captive runtime, you can add this file afterwards alongside your generated .exe file before you package it up. For the AIR shared runtime installers, it may be possible to do this if you unzip the AdobeAIR.exe file and then copy the dll into that root folder, then run the installer .exe file...
thanks
Unzipping the AIR shared runtime and adding the dll, worked and I could install the runtime but trying to run test.exe or test.air, produces the same error ( tried air 32 and air 33 )
I tried this option but it dose not work, sees it as invalid argument: adt -package -storetype pkcs12 -keystore TestSMP.p12 -storepass test -tsa http://sha256timestamp.ws.symantec.com/sha256/timestamp -airDownloadURL https://airsdk.harman.com/assets/downloads/AdobeAIR.exe -target air test.air test-app.xml test.swf
probably it is only for Android
So to get it to work with the test.exe, I'm not 100% sure what that's doing - the icon suggests it's a self-extracting zip so it would have the same challenges... the test.air will trigger a process called "Adobe AIR Application Installer.exe" so you'd need the dsound.dll to also be put into "C:\Program Files (x86)\Common Files\Adobe AIR\Versions\1.0"
We'll get a release out in the next week or so to fix all this..
thanks
Has a release been brought out yet to fix this, I have exactly the same problem and followed all the above steps with the same results, still not able to install Adobe Air.
Thanks
@MariusDuP it's currently going through our QA processes, should be finished by Friday and then I need to get the web team to upload it..
thanks
Please update this thread once the update is on the website. So we can test
@radubirsan this has just gone live...
thanks
Where can we get the update from?
The shared AIR runtime can be found at: https://airsdk.harman.com/runtime
or direct link for Windows: https://airsdk.harman.com/assets/downloads/AdobeAIR.exe
thanks
I tried the shared runtime and it works fine on Windows 11 & 10. I also tired packaging app with Animate CC & AIR 33.1.1.821 Running the exe file on a windows without AIR Shared Runtime gives the following error: "This application cannot be installed because this installer has been mis-configured. Please contact the application author for assistance."
Will Herman support the shared runtime distribution model, even though it is "not recommended", my employer wants to buy a license specifically for the Shared Runtime distribution model.
Hi
So looking at what happens if you try to run an installer exe file on a machine without AIR installed -> yes I think we need to update this process...! I had thought for a while that we should update the "native installer" mechanism so that it actually includes the runtime as well, though maybe we'll be able to keep them slimmer and just add in the extra infrastructure that it needs...
It's not really the application author who can do anything about that error message though ...!
In terms of the shared runtime, we are fine with companies distributing that internally to their employees' machines. Adobe had a separate licensing mechanism for the runtimes that were then distributed in conjunction with applications but that's where we would prefer the applications to include the runtimes via the bundle mechanism.
I think where we'd like to end up: a) with the "native" package type so that this actually works i.e. you can give this to anyone to install, it would work as long as they've got AIR already (or as long as they're internet-connected, once we've fixed it) b) with the "bundle" mechanism like we have now -> captive runtime and an executable c) with the bundle turned into an installer, which would eliminate the dependency on the shared runtime but would simplify this for people if we can actually generate an MSI file for example..!
thanks
@ajwfrost , my company bought a SDK here is the result on Windows 10 machine. a) "native" package outputs exe when run we get on the local PC:
After manually downloading and installing AIR Runtime 33. Rerunning the installer gives flowing error:
Hi
If you've got the SDK, then it would be better if you can create a "bundle" output rather than the "native" one. The bundle includes the appropriate runtime...
But, if you've already installed the AIR runtime 33.1, then it should then install; can you confirm what version of the shared runtime you currently have installed on this? and can you share the installation log (maybe wipe out the log file prior to trying to install the above .exe?)
%LocalAppData%\Adobe\AIR\logs\Install.log
thanks
I can confirm that if I install the runtime v 33.1.1.821 and then run the "native" installer the application installs.
If I uninstall AIR Runtime, and the application delete the Install.log and run the native installer I get this:
Can you confirm that this is still a issue with AIR SDK 33.1.1.821 "native" installer packaging?
With 821 yes, this is the expected (bad) behaviour. The next SDK release will not try the step of trying to download the runtime from Adobe's servers, since (a) as you can see, it doesn't help as the Adobe runtime can't cope with the 33.1-based application namespace; and (b) at some point those downloads will be turned off (I'm surprised they still work!)
So for a while the installers (when built with 33.1.1.856 onwards) should just display a message saying you need to install the shared runtime as a manual/separate step, before you run the installer again. The full solution of course is to host our own runtime installer and certificate info etc as required so that the above all works again .. but we'd much prefer people to use the captive/bundled runtime (and are considering changing the 'native' option so that it includes the captive runtime anyway...)
thanks
thanks
What's the status of of this. I'm having a similar issue. I don't understand what's the difference between native and bundle of native doesn't seamlessly install? Can someone explain?
@markdemich Something like this:
In the past, it was common for many people to have the air runtime installed on their devices, which could run any air apps, or if the user didn't have it installed they'd have to go through 2 steps for an app to work, first to download the air runtime and then to download the app (native approach). Now however, nearly all developers have switched to bundling the air runtime with the app together, so that the only step is to install the app since it already includes the runtime. (bundle approach)
The solution is to place the dll in the root folder of the program you are trying to open.
https://github.com/airsdk/Adobe-Runtime-Support/files/8253919/dsound.zip
I have just run in to this issue with one of my testers, but on a Mac.
Captive runtime build (of course), running 50.2.2.3
My tester is running on an M1 with Ventura 13.2.1
Works fine for me on Windows 10 and an x86 Mac using Monterey 12.6.1 I have literally never seen this issue before today.
Edit: Got tester to rollback to an older version of the app which is running 50.2.1.1
. No error, runs as expected.
@waveofthought-code I've weirdly also had this issue with a few users with a recently-released game on Steam, on Windows, and also happening with a captive runtime bundle (not shared/native).
In our case it's built with the older 33.1.1.935. I can't duplicate it myself, but the users all reported that if they installed our game from Steam on their D: drive, they would get this error when trying to run the main EXE. When they installed on their C: drive though it didn't have any problems. (On my own machines, running from any drive works just fine...)
No idea if it's related, just thought I'd mention it since you also mentioned seeing this with a captive runtime bundle, unlike the earlier posts where it was happening with only the shared runtime...
Side-note, @ajwfrost for captive runtime builds it would be nice for the error message to be worded differently, since all of these users have been emailing us asking why they need to download the shared runtime and asking us where to install it, when it already has the captive runtime...
@FliplineStudios It just got weird over here: Running it on Steam works. Running it from TestFlight does not (above error). Same SDK (50.2.2.3
) -- but only on Ventura/M1. My Monterey/x86 machine works 100%.
The TestFlight version does have apple sign in, however, so now i'm suspicious of the process itself rather than the SDK. I really don't know anymore.
Still seems weird that Apple Sign In would make a captive runtime bundle suddenly unable to find the captive runtime it's packaged with!
@ajwfrost Are there any other scenarios where that error message would pop up even though the captive runtime is already in the bundle?
The error message pops up when the bootstrap executable file isn't able to load in the AIR runtime library/framework. So if you're using a captive runtime on mac, the executable should just try to load in the framework under the expected folder: if it fails, this error message is shown. The wording makes it sound like it's a shared runtime, I agree -> I will have to see whether it's possible for us to distinguish between these situations though. It's altogether possible that an installation of a shared runtime, if present, would be picked up in this case though, so the suggested message may well be a solution!
My assumption here though is that the installation is 'damaged' meaning the files are likely there, but unable to be loaded, and on macOS that means most likely a code signing failure. If the files aren't signed properly, or if files have been added/removed since signing, or if the permissions don't check out properly, then it's likely to have the problem.
If you have an installation where it's failing, it's worth checking the code signing information of the binaries. I believe that Steam re-sign your files so that may be why you're seeing different behaviour (are you signing the binaries yourself before deploying via TestFlight?). There are definitely different standards applied to the code-signing of applications depending on whether they're ARM-based or Intel-based, at least on an ARM-based device (e.g. a universal app running on an M1 would fail if the code-signing/entitlements isn't exactly right when you load it normally in ARM mode; but if you configure it to launch in Intel mode with the Rosetta2 thing, it then just works....)
On Windows I'm more surprised to see that error code, unless the binary has been blocked by an anti-virus program... or depending on how exactly Steam is deploying the binary, I would assume it's the same folder structure in all cases and the executable is just checking via a relative path to try to find the DLL. We should perhaps look to add more logging in here, and maybe the error message can be changed depending on whether we can find (but not load) the binaries...
thanks
@ajwfrost ty - it was what I suspected (and what you mentioned) -- not a problem with the SDK, but with the signing of it (aka, the "process" I mentioned above).
Turns out my script was adding entitlements to the air framework when codesigning and it wasn't doing that previously. Removing that issue and going back to 50.2.2.3 has stopped this error from occuring.
Side note: I was actually adding entitlements to every framework and have since stopped doing that as well. I still codesign each one, however. Now, only the app itself gets entitlements when its signed. It all works.
A client reported not being able to install AIR runtime - version 33.1.1.743
Logged in to TeamViewer it is a new laptop that with Window 11 Por N 21H2 220000.434
"This application requires a version of adobe AIR which cannot be found...."
The PC has a Norton Security software on the leptops but disabling it is not an option.
This might be related to another [issue](https://github.com/airsdk/Adobe-Runtime-Support/issues/1715