Jump to content
PeterPanettone

Best practices for system migration?

Recommended Posts

In a week I will migrate to a new system with new hardware and new OS:

 

From: Windows 7 x64 SP 1, Delphi 10.1 Berlin, Delphi 10.3.1

To: Windows 10 Pro x64, new installation

 

During the migration, Delphi will be used mainly on the new system, but it could also be started a few times on the old system. Is this a problem?

 

What are the best practices for such a migration, from your experiences?

 

Could anybody give me a few helpful hints?

 

Share this post


Link to post
12 hours ago, PeterPanettone said:

During the migration, Delphi will be used mainly on the new system, but it could also be started a few times on the old system. Is this a problem?

That is no problem, as long as it is only you using that license.

12 hours ago, PeterPanettone said:

What are the best practices for such a migration, from your experiences?

Make sure all your data files are not on the windows boot partition and you are golden. Consider running your Delphi in a VM and you are platinum 😄

 

I can't see anything else to consider. In the end it is just a matter of look & feel migrating from Win7 to Win10.

Share this post


Link to post
45 minutes ago, Sherlock said:

Consider running your Delphi in a VM

Thanks for your hints. Do you mean having the whole Windows 10 operating system in a VM? AFAIK there is no way to run only a single application in a VM?

Share this post


Link to post
51 minutes ago, Sherlock said:

using that license

How should the license be transferred from the old computer to the new computer?

Share this post


Link to post

For a new migration, I would go into creating a VM.

The numbers of Delphi installations is restrained, and after a few setup, you would need to reactivate the licence count - which requires an active licence! So in the future you may need to actually pay a new licence, just to install Delphi on a new computer! (this changed a few weeks ago IIRC)

With a VM, you won't face this problem in the future.

Also note that creating a VM with Windows 10 is free. You are not even required to validate it, if you can stand up with a black wallpaper - which should be find for a VM running a dev environment.

  • Like 1

Share this post


Link to post
1 hour ago, Sherlock said:

That is no problem, as long as it is only you using that license.

How does Delphi know that I am the same person on the new computer as on the old computer?

Share this post


Link to post
4 minutes ago, Arnaud Bouchez said:

you would need to reactivate the licence count - which requires an active licence!

At least to my knowledge that is not quite correct. If you are on an active subscription you can contact support for that, if not you need to contact sales. The reactivation is done in both cases. 

 

Do you know of any non-subscription user not being able to get a license bump from sales when asking for it?

 

Note: This is just to get the facts right and shall not imply that I am actually supporting this scenario.

  • Like 1

Share this post


Link to post

Unfortunately, the Delphi License Manager does not have an "Export" feature where I can export all my licenses shown in the License Manager. It has only an "Import" feature:

 

image.png.24c1aaf84cc89cef964293f9e6ccb249.png

Share this post


Link to post
1 hour ago, PeterPanettone said:

Unfortunately, the Delphi License Manager does not have an "Export" feature where I can export all my licenses shown in the License Manager. It has only an "Import" feature:

 

image.png.24c1aaf84cc89cef964293f9e6ccb249.png

You only need the licence key, which you can copy from the Licence manager via clipboard.

Share this post


Link to post

It doesn't feel right for me to develop under an operating system that's constantly changing.  It happened 3 times to me in the past 12 months that a Windows update broke something serious on my Windows 10 system.  

 

I feel much safer developing inside a Windows 7 x64 VM.  To test under Windows 10, I use remote debugging.

 

 

Share this post


Link to post

@A.M. Hoornweg Well...your users have to cope with it, and you have want to give your users a product, that they can rely on. Win7 is practically dead, so your product has to offer best user experience on Win10 - like it or not.

  • Like 1

Share this post


Link to post
1 hour ago, A.M. Hoornweg said:

I feel much safer developing inside a Windows 7 x64 VM

I have tested VMWare WorkstationPlayer with Windows 7 x64 as a host and Windows 10 Insider as a guest. Unfortunately, it did not work: There were problems with each new start.

Share this post


Link to post
5 hours ago, Sherlock said:

Make sure all your data files are not on the windows boot partition

What about the VM files? AFAIR VMWare Workstation has a habit of storing them SOMEWHERE deeply nested in DIFFERENT directories on the C:\ Partition.

Share this post


Link to post
1 minute ago, PeterPanettone said:

What about the VM files? AFAIR VMWare Workstation has a habit of storing them SOMEWHERE deeply nested in DIFFERENT directories on the C:\ Partition.

No, VMware workstation stores all files for one virtual machine (vmx, vmxf, vmdk, nvram) in a single directory which you can freely move around. The next time you open this machine it will simply ask if it was copied or moved (to update uuid if necessary).

Share this post


Link to post

I'd recommend putting Delphi into a VM (top 2 choices probably are VMWare Workstation and VirtualBox for Windows and Parallels for Mac)

 

This is what I do:

Always maintain a base Windows 10 VM.  Keep updates current and have some basic tools installed (7-zip, WinMerge, GIT/SVN clients.)   Set computername to something like "Win10Base"

 

Then, for each new Delphi update / version:

- Create a full clone of Win10Base

- Initially create a virtual drive F disk for Dev projects, then later copy/move the Drive F virtual disk from the previous VM and attach to the new VM

- Copy C:\programdata\embarcadero from the last VM to this new clone.  (Suggest that you keep a copy of this folder on your DEV drive within your repos)

- Change the newly created computer name to match the last VM/standard dev computer name, like "YourNameDelphiVM" and reboot

- Create a fresh virtual drive G for each new IDE install.  (20-30GB needed depending on which features you install)

- Install Delphi to drive G:\ from an attached full install ISO 

- Ideally your Delphi folders are also in VCS and you can update your repo with the latest install. (I imagine most don't keep Delphi installs in version control though.)

 

I currently utilize a networked named user license and have a separate VM running the local license server which I start up before installing the new Delphi version...there are no more license bump requests with this method.  The license costs the same and you can try to get your license converted to this for no extra cost on your next renewal.  The License is tied to computername + username so if you keep these the same, then the copy of the slip files in "C;\programdata\embarcadero" works just fine.

 

If you have a bunch of third party components, then it becomes much more of a hassle especially if these components have license protection mechanisms.  All of your components' source should be on your DEV drive within your repos.  You should have a versioned config script for component registration/library path config.  There are plenty of conversations about component management - probably the best approach, if you can pull it off, is to only have all components configured on a per-project basis and have a pretty bare library path in the IDE.

 

Ideally you should have something like a ConfigureDelphi.bat that you can run on each new install.  I use this for setting all the options that I used to manually change on every new Delphi version.... how many times after a new Delphi install do you immediately launch Delphi and go into Tools->Options and do the same things like disable Error Insight, set your right margin, set the editor font, and all those custom settings which you MUST have in order to code properly?  : )   

 

 

Share this post


Link to post
1 hour ago, Alexander Elagin said:

No, VMware workstation stores all files for one virtual machine (vmx, vmxf, vmdk, nvram) in a single directory

OK, that must be a new version.

Share this post


Link to post
6 hours ago, Sherlock said:

@A.M. Hoornweg Well...your users have to cope with it, and you have want to give your users a product, that they can rely on. Win7 is practically dead, so your product has to offer best user experience on Win10 - like it or not.

Like I said, I do test my apps on Windows 10 (using remote debugging, on a system with 3 monitors). But I do the compilation inside a Windows 7 VM, on a stable system that doesn't change all the time.

Share this post


Link to post

I prefer VirtualBox to the others. One nice thing about it is you can move your VMs between Windows and MacOS fairly easily. (I prefer to work on a Mac.) They're HUGE files (120GB in my case) but they're a lot easier to deal with than either VMWare or especially Parallels. I also prefer running Win 7 as the OS inside the VM. I only wish I could turn off the auto-update, although that looks like it might happen on its own shortly. Every time Windows updates, something seems to break! I only use the VM for development. I don't surf the internet, I don't read email. I don't do anything that's not related to dev work. I don't run anti-virus or anything. It's fast, efficient, and clean. I back it up periodically, and if I were to get a virus or something, I'd just delete it and pull the previous version from backup media. I don't remember the last time I got a virus in my Dev VM (other than Windows itself).

 

I just want a stable platform to work on that's not always reconfiguring itself. That's what viruses do. To me, Windows is the worst virus I have to deal with.

Share this post


Link to post
8 minutes ago, David Schwartz said:

I prefer VirtualBox to the others.

Agreed! And CloneVDI is indispensable.

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×