Installing the SWS F-4B Phantom will over-write your dll.xml

Simworks Studios Support

Alex (SIR_RIPPER) is unable to respond to the forum today, so I am relaying the following message for him.

Alex is asking for everyone having an issue with the Phantom ....or any other SWS product.... to please go to the SWS Support page. He also asks that if you don't see information regarding your specific issue(s) then to please click on "Contact Support" and give a detailed description of what you are experiencing.
 
I mentioned this in two places concerning the F4 and apparently no read it, or simply ignored it. The F-4 install does not "overwrite" the original dll.xml. . .it saves it as a backup and simply writes a new dll.xml with the Carrier information only. Now if the installer is supposed to merge the two together (which makes more sense) then that's where it fails, but again, it doesn't overwrite your original dll.xml file, it's there sandwiched in with all the others, just renamed.

It all depends on running the installer as an administrator. You don't just double click on it.

Priller

Installed as admin here, with AV off. Dll.xml overwritten with no backup created. Win 7 x64, FSX-A here, if that's relevant.

Not meaning to disparage SWS, the freebie was very nice and looks to be of good quality. Just want to caution others to be careful, there seems to be an install bug for at least a few of us.

This certainly isn't the first time I've seen this happen, and you'd think I'd know to make my own dll.xml backup before installing a complex add on. I tell myself I will, "next time"... and then I drift away from simming for a bit, come back and forget. 😆
 
Hello gents,

First of all, I'd like to direct you to our Support page for any questions you might have, as it is impossible to monitor all the different communities. While some users are knowledgeable enough to help, it is likely that they don't know the add-on as well as the developer does, resulting in breaking something else that could show up later.

Regarding overwriting dll.xml, I will write a long-winded explanation here as this is an issue that deserves some analysis. *sips coffee*

The facts:
1) P3Dv4 users report dll.xml not being updated
2) Some users report dll.xml being overwritten without a backup
3) Other users report having a backup and a dll.xml that has been correctly updated

Regarding #1: In P3Dv4 we're using the new add-on installation method provided by LM. That methodology does not require us to update dll.xml, so we don't and the add-ons work.

Regading #2/3:
Both facts are true. The reason is technical.

As it comes from a clean installation, dll.xml is encoded in Windows-1252 and that is true for FSX through P3Dv3. This can be seen by opening it with Notepad++ and looking at its header (underlined in 1st pic) and its encoding (2nd pic).

attachment.php

attachment.php


Encoding is important because that's the "language" the file is written in. While our brains can understand the difference between the latin alphabet, chinese and hieroglyphics, the computer needs to be told what it's reading.

When the installer does see a correctly encoded file, our installer will back it up, then append the required stuff to do our job.

Therefore, if a user has manually edited the file, it is likely that the editor changed the encoding to UTF-8. Similarly, many installers will edit dll.xml while changing its encoding to UTF-8, because that's what they understand.

Our installer expects the file to be encoded in what MS provided, Windows-1252. If it sees anything else, it will not be able to understand it, as it can only "speak" Windows-1252 and as far as the parser is concerned, that file is empty. Therefore, it will generate a correctly encoded dll.xml and overwrite whatever is "corrupt" in there.


Seemingly innocent, daily operations that users perform are breaking core files of the simulator, as the users weren't expected to tinker with these files, alas!

A worse case of such an operation, encountered often in our tech support, is when users manually edit their add-ons.cfg file in Prepar3Dv3/v4. This also results in a change of encoding that will cause P3D to be unable to update the file when an add-on is detected, because it cannot understand its own cfg file. The method to update this file is prescribed in the SDK and it is stressed that these files should never be manually edited, something that users don't know -and even some developers.

To cut a very long story short: while FSX and P3D are capable of "reading" both UTF-8 and Windows-1252 while working, they cannot "write" into them unless the encoding is what they expect. Installers and editors, however, have specific preferences and making an installer that will be able to cover all potential outcomes of a developer's or user's intervention is impossible. Our installer goes "by the manufacturer's standard" and while we are still looking into this matter, truth is that there is no fail-proof method that we know of to make this work.
 

Attachments

  • dll.xml_1.jpg
    dll.xml_1.jpg
    32.4 KB · Views: 13
  • dll.xml_2.jpg
    dll.xml_2.jpg
    70.9 KB · Views: 13
Thank you for clarification but it does not help a lot. Could you rather give us the required lines so we can add them manually to the dll. xml in order to use this generous gift. I must add though that luckily this was a gift otherwise you would have had a customer support nightmare in your hands.
 
Thank you for clarification but it does not help a lot. Could you rather give us the required lines so we can add them manually to the dll. xml in order to use this generous gift. I must add though that luckily this was a gift otherwise you would have had a customer support nightmare in your hands.


<Launch.Addon>
<Name>CarrierExtensions</Name>
<Disabled>False</Disabled>
<ManualLoad>False</ManualLoad>
<Path>Modules\CarrierExtensions.dll</Path>
</Launch.Addon>
<Launch.Addon>
<Name>SWS_ShipPlacer</Name>
<Disabled>False</Disabled>
<ManualLoad>False</ManualLoad>
<Path>Modules\SWS_ShipPlacer.dll</Path>
</Launch.Addon>
 
Thank you for clarification but it does not help a lot. Could you rather give us the required lines so we can add them manually to the dll. xml in order to use this generous gift. I must add though that luckily this was a gift otherwise you would have had a customer support nightmare in your hands.

"customer support nightmare"?

This particular offering from SWS was released a couple of years ago, and they have already helped previous customers who reported it to their Customer Support page.
 
<Launch.Addon>
<Name>CarrierExtensions</Name>
<Disabled>False</Disabled>
<ManualLoad>False</ManualLoad>
<Path>Modules\CarrierExtensions.dll</Path>
</Launch.Addon>
<Launch.Addon>
<Name>SWS_ShipPlacer</Name>
<Disabled>False</Disabled>
<ManualLoad>False</ManualLoad>
<Path>Modules\SWS_ShipPlacer.dll</Path>
</Launch.Addon>

Thank you very much!
 
"customer support nightmare"?

This particular offering from SWS was released a couple of years ago, and they have already helped previous customers who reported it to their Customer Support page.
No offense, but I just imagined what kind of reactions this would have caused if I had spent 50 euros and did not have backup...
 
Back
Top