Jump to content

Move RailMaster from Hard disk C to Hard disk D


Recommended Posts

Hi guys

I am running RM on my desktop which has 2 1TB hard disks,at the moment

RM and all other software and data run on C.

I now wish to transfer RM to D completely so that I can run RailMaster only

from that disk.

Advice please on how to do this safely.

Once done I suppose the RM icons will remain on my desktop but when

clicking on the correct icon will Windows 7 take me direct to disk D ?

Jug

Link to comment
Share on other sites

Unless HRMS have a reason why not, it should just be a matter of deactivating, uninstalling, then reinstall from Powerpos, selecting D: in the installation path instead of C: then reactivating.  You should be able to then copy over your track plans, programs and locos. 

Link to comment
Share on other sites

Assuming you follow the instructions given by Fishmanoz, then any desktop icons created by the fresh install should already point to the D:

 

If they don't then 'right click' the desktop shortcut in question and choose 'Properties', then in the 'Shortcut' tab edit the target path string to point to the correct D: rm.exe file location.

 

Don't just manually move the RailMaster program folder to the D: else you'll invalidate all the relevant Windows Registry settings.

Link to comment
Share on other sites

Even if you install successfully onto any drive rather than your root drive 'C' and RM worked properly you have forgotten one thing...

 

Railmaster will auto update and write everything to the 'C' drive as this is its programmed install drive. The code will be written to only install at that point. Thus making a working version on 'D' for example would be a waste of time. It would need a rewrite of the installer code and certain variables within the same and probably other code would need altering too.

Link to comment
Share on other sites

Even if you install successfully onto any drive rather than your root drive 'C' and RM worked properly you have forgotten one thing...

 

Railmaster will auto update and write everything to the 'C' drive as this is its programmed install drive. The code will be written to only install at that point. Thus making a working version on 'D' for example would be a waste of time. It would need a rewrite of the installer code and certain variables within the same and probably other code would need altering too.

Hi AC,

Isn't what you describe here the way it SHOULD work? I would have thought that during the initial installation of a software package, the user should be given the choice of location for the software's "home" folder, and that information would be stored away in a registry setting. Thereafter, the first thing the update process should do is retrieve this information from the registry, and apply the updates based on this "home" folder. Also, during the operation of the software itself, it should be aware of this "home" folder and apply it to disc data accesses e.g. when giving the user a choice of sound file or program to be run or chained.

Ray

Link to comment
Share on other sites

Isn't it just like any other program asking you to confirm the install path, and change it if you wish?  Or is my memory failing me and it will only allow C: Etc?

You can change the install path of any program written to allow you to do that. The giveaway is when it simply offers you the choice of directory or folder to install to.

 

Having said that some programs simply insist on being installed to drive 'C' as it cannot handle being installed anywhere else (other drive). See my post below re the reasons for this...

Link to comment
Share on other sites

Even if you install successfully onto any drive rather than your root drive 'C' and RM worked properly you have forgotten one thing...

 

Railmaster will auto update and write everything to the 'C' drive as this is its programmed install drive. The code will be written to only install at that point. Thus making a working version on 'D' for example would be a waste of time. It would need a rewrite of the installer code and certain variables within the same and probably other code would need altering too.

Hi AC,

Isn't what you describe here the way it SHOULD work? I would have thought that during the initial installation of a software package, the user should be given the choice of location for the software's "home" folder, and that information would be stored away in a registry setting. Thereafter, the first thing the update process should do is retrieve this information from the registry, and apply the updates based on this "home" folder. Also, during the operation of the software itself, it should be aware of this "home" folder and apply it to disc data accesses e.g. when giving the user a choice of sound file or program to be run or chained.

Ray

You are quite right in what you say or rather surmise to be more accurate.

 

The problem one has arises when an install program is written that allows you to install on another drive but does not intend to do that OR just simply doesn't give the choice.

 

It is the former option that causes issues when as you say the software install path is 'recorded' and placed into the registry and the 'home folder' as you put it is alsosaved in the registry. However, it is not always that simple and it definitely depends upon how the variables are written and what parameters each variable has.

 

For example, if I were to write a program to install on any drive then that installer has to have variables written into it which 'remember' the data offered via the user inputting the install path. So, if I then said install RailMaster to drive 'E' as thus 'e:ProgramsRailwaysRailMaster' then variables within the installer have to be allocated that path, thus: $drive='e' and $path='ProgramsRailwaysRailMaster'. Obviously the syntax (how the code is written) would be slightly more complex than that but it gives the general idea.

 

If RailMaster is installed to drive 'D' and those variables are NOT written into the code for the install or further code inside of the program does not contain the relevant variables in order to do a similar task for other data as it is running then the whole program breaks down during operation. Error messages will arise stating that certain parameters cannot be found and these will almost certainly be those of databased data or even access to dll files (direct link library). These are crucial files that must work correctly at all times as either your system or program will fail.

 

I have noted this down for you in a speedy manner so hopefully it makes sense! If not I'll take moe time next time and explain clearer.

 

Just to quickly expalin variables if you don't know already...

 

In a program to find out how many apples Johnny has in his three baskets you would have to use variables to do the work of calculating the final sum. If we know he has in basket one 6 apples, in basket two 14 apples and in basket three 7 apples we as humans can add this up quickly to make 21 apples. A computer is generally thick so it can't do it. A computer deals only in binary numbers (zero's and one's - it understands NOTHING else).

 

How then do we get the computer to add them? Well, we tell a small program that can use variables the following:

 

The first variable we will call 'a', the second 'b' and the third 'c'. We allocate the first variable the value of 6, the second 14 and the third 7 as follows: a=6, b=14 and c=7. We can now add them up but the computer cannot store the answer until it has another variable in which it stores that final sum. So we allocate the fourth variable as 'd'.

 

So now we can add the numbers and come up with a solution... a+b+c=d (6+14+7=21). Now we have the value of 'd' we can print that to screen like thus: PRINT d and on screen will appear the number 21.

 

If you can now imagine how many variables we would need to sort out install paths etc you can be well assured that sometimes some software writers just don't want to do this as it saves time not to. It also means that the writers don't have to worry about Joe installing to drive 'D' and Jim installing to drive 'F' etc etc....

 

Of course some programs will absolutely not allow installation to another drive full stop even at the install stage as they absolutely require drive 'C' to work... which is how Windows dos it... although even that is not strictly true! Anyway, you get the drift....

Link to comment
Share on other sites

Hi AC,

Thanks for the programming course, but I was a programmer for 39 years before retirement in 2006 :-)

All I'm saying is that if the variables $drive='e' and $path='ProgramsRailwaysRailMaster' were stored as values in the Registry, then they can be restored as, if you like, run time variables for use by either the installation/update process or the actual RM program session. Nowhere in the code should C: be hard-coded.

Ray

Link to comment
Share on other sites

Hi AC,

Thanks for the programming course, but I was a programmer for 39 years before retirement in 2006 :-)

All I'm saying is that if the variables $drive='e' and $path='ProgramsRailwaysRailMaster' were stored as values in the Registry, then they can be restored as, if you like, run time variables for use by either the installation/update process or the actual RM program session. Nowhere in the code should C: be hard-coded.

Ray

Hi St1ngr4y

I was only attempting to give a brief edu to those who didn't really grasp why it wouldn't work installing to drive whatever...

You're right in that it should work on any drive but programs can be written where the root drive is the only install option. Unfortunate but true. So as has been said RM will only work on 'C'...

Link to comment
Share on other sites

Hi AC,

Thanks for the programming course, but I was a programmer for 39 years before retirement in 2006 :-)

All I'm saying is that if the variables $drive='e' and $path='ProgramsRailwaysRailMaster' were stored as values in the Registry, then they can be restored as, if you like, run time variables for use by either the installation/update process or the actual RM program session. Nowhere in the code should C: be hard-coded.

Ray

Hi St1ngr4y

I was only attempting to give a brief edu to those who didn't really grasp why it wouldn't work installing to drive whatever...

You're right in that it should work on any drive but programs can be written where the root drive is the only install option. Unfortunate but true. So as has been said RM will only work on 'C'...

I can confirm this seem my post in the thread about using parallels on Mac....i had created a virtual d drive on my mac by mistake and it caised me a shed load of problems. I have had to relearn windows to sort it out but I think this was the cause of the problem for me

Link to comment
Share on other sites

@Philx

Glad you managed to find out the probable cause. Installing programs to different drives is easy but you can never be sure that over time everything is going to work just nice and dandy. Unless of course you have been informed on the software packaging or elsewhere that it will definitely work.

 

Really, the only thing you gain by installing programs to other than the root drive is space on the root drive itself. About 99% of programs will install code that is always going to be set in the Windows folder or Program Files folders for example thus continually adding to the space used on 'C', your root drive, anyway. It's usually best to install programs to the root drive and you can then save any data from that program to any other drive afterward in terms of saved data. Anyway, most of you will know this, so I'm warbling....

Link to comment
Share on other sites

With certain limited exceptions, usually due to 3rd party software badly written, it is just good practice to deliver an application that can be installed and run from anywhere.  In fact, leaving an application to work by using a PC's default locations is asking for trouble.

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
  • Create New...