Updated Indy - Getting error related to IPPeerClient and IPPeerServer - indy

I've been practicing updating Indy on a VM and I've gotten far enough to compile some of my projects but not all.
First of all I'm Delphi Seattle, updated to Indy 10.6.2 following the instructions here
In my client projects that use Indy, there is IPPeerClient in the Uses clause. This is causing the error "Unit IPPeerClient was compiled with a different version of IdTCPConnection.TidTCPConnection". I can remove the Use statement and they seem to be working (so far, the ones I've tested).
But for my server projects (datasnap and others), if I try to remove IPPeerServer, it gets added back in automatically and I'm stuck.

Related

The procedure entry point could not be located in the dynamic link library MetropolisULiveTile200.bpl

Today I start getting this message when I open Delphi XE6.
The procedure entry point #Idstackwindows#TidStackWindows#NetworkToHost$qqrj could not be located in the dynamic link library C:\Program Files (x86)\Embarcadero\Studio\14.0\bin\MetropolisULiveTile200.bpl.
I answered Yes to "Do you want to load it next time".
When I look in the folder I see that the MetropolisULiveTile200.bpl is in the folder.
I haven't installed anything new since 9/24/2020, when I installed the latest version of Indy. I have used Delphi XE6 every day since I upgraded.
It looks like any program I have are building and compiling without any errors.
I search the internet, but was not able to find any with the same problem.
This issue is documented in Indy's installation notes:
In D/CB/RAD XE3+, Embarcadero's Metropolis UI LiveTile framework is compiled against the Indy 10 packages that ship with the IDE. Installing a new version of Indy will render LiveTiles unusable, as it will not be able to load the Indy packages anymore, and LiveTiles cannot be recompiled by end users. If you need to use LiveTiles then you will need to maintain the original Indy 10 packages for use in LiveTile projects. You can use a separate installation of Indy 10 for non-LiveTile projects. This has not been addressed by Embarcadero yet so Indy 10 upgrades and LiveTiles can co-exist.
If you were not getting this error between 9/24 and today, and now you are, then you probably opened a project today that has a dependency on (or at least enables) the LiveTile package, whereas projects you worked on earlier do not.

UnityContainerExtensions.cs not found

After updating some NuGet packages, it turned out that some things in my website got broken by new code. I updated to the new Unity inversion control 5.0.0, etc. So after a while of hunting around and trying to fix it, I was able to get it to finally build and launch the site. However, the Unity IOC was broken because I kepts getting the "Error in Application '~/', controller must have a parameterless constructor". I saw that my couple of Unity files (UnityConfig.cs and UnityMvcActivator.cs) were gone, so I replaced them with ones I had in the backup folder.
Well, now it launches a loading site, but in VS it now says "UnityContainerExtensions.cs not found". I see that it looks all over for this file, around 'C:\ Program Files (x86)\Microsoft Visual Studio 14.0\VC...' and then it goes looking through 'c:\projects\unity]Abstractions\src\Utility...' - a folder that I can't even see.
This is in VS2015, doing a web application with Framework 4.6.
What can I do to just make it work again, as when I first had it so many months ago?
Alright, I was able to fix my Unity problem by rolling back on some of the packages. I'm the kind of person who likes to have no notifications, so I clicked Update All, and apparently the updates weren't necessarily compatible with my project here. To get it working again I has to bring back:
Unity.Abstractions = 2.0.0
Unity = 4.0.1
Unity.AspNet.WebApi = 4.0.1
Unity.Mvc = 4.0.1
Now to great relief, all works just as it did before!
However, I do wish I knew why the breakages happen and also why these packages are listed as updates when they are not going to work with my project.
Till the future, my system is going to have to consist of a Post-It "Do not update these xxxx packages, they will break stuff". And I wish to gain an understanding of what is the reason behind such Unity mess.

Lexical or Preprocessor Issue, file not found on Xcode

I have been trying to fix some errors appearing on a code I am currently using. I did all the actions at the ReadMe files,I followed all the instructions given at git, and I still get errors at almost every header (i.e. Lexical or Preprocessor Issue Group
config.hpp:19:10: 'boost/config.hpp' file not found)
After some tries, I think that my Xcode project doesn't read the libraries, as it should. I started fixing the problem manually, by setting the exact path of every header, but there is no point to do that, since I am going to use this project in a different computer too, where the repository won't be the same.
After that, I installed AFNetworking 3.0 and CocoaPods, since I read that it would help, but I didn't managed to solve the errors.
I am using
-OS X Yosemite version 10.10.5
-Xcode version 7.0

Program updating does not works properly

I have a program which has several versions. In the last version I have a problem: when I'm trying to update previous version to new one, the installer of new version removes files from previous version, but don't installs new files.
Just installing works fine, but updating process has this problem.
What can be the reason of this problem ?
Upade: I'll try to describe more detail
I have VS project where I have a project of program and an installer of this project. Till present all were working fine, but after my last big update ,the installer start work incorrectly.
And another question:
How I can debug installation process ?
I dont know which program you have. Generally programs have problems because of multible versions, because programmers arrange this. For example ;
Lets consider Microsoft Framework. If you have 4.5 you cannot install 4.0, so that with similar idea you cannot update it.
Try to delete other versions and update them and install others. Or you can also stop services which you dont want to update.Then other one will be updated without any problem.

Make Visual Studio not care about DLL versions

Is there a way to make visual studio not care about dll versions? Is this a bad idea?
I am resetting up my dev machine and I just installed the latest version of Pex and Moles (version .92). All my projects are on version .91.
We are in the middle of a release and don't want to upgrade right now. Also, I cannot find an installer to version .91.
When I try to compile I get a message that I am missing the reference. (Hence this question)
The version is important.. By definition, there is a difference from each released version to the next (or there would be no need for a new version). Your program may not perform correctly if you are expecting one version and instead have another.
This was a part of what was known as "DLL Hell" in the pre-.NET days... If you needed to use a third party component (Crystal Reports Viewer is one we always had to deal with), you would just use the reference to whatever installed version was on the user's PC. Our retail locations had to have a specific version of Crystal Reports for their bookwork reports to print correctly, and because of that, we had to hold on to an old version forever.. Upgrading Crystal on the PC broke the vendor's bookwork app. On my first ever PC, I had several applications break when I would install or upgrade another. In particular, Real Player broke my telephone answering machine software. Goofy stuff like that...
So, the version IS important, even if it is an annoyance. It's also why I have a bias against third party tools that I have no code for, and can't recompile myself.
If you look at the properties of a referenced DLL, you will see a property "Specific Version". If you set it false, it doesn't track the specific version in the project file.
For this to work, you have to somehow fix the references where ever they are used. You can do this by opening every solution and fixing the references (at which time you could also just update the references to the correct version, paying heed to David's comments).
If you have a lot of solutions, you might use a tool like sed (see this post for windows versions of tool like this Is there any sed like utility for cmd.exe) to just update the project files as needed all at once.

Resources