Machsupport Forum

Mach Discussion => Mach4 General Discussion => Topic started by: TDAY on December 10, 2015, 02:02:55 PM

Title: Mach4 Install on XP
Post by: TDAY on December 10, 2015, 02:02:55 PM
Trying to install Mach4 on a windows XP machine. After install, i try to launch Mach4 and get an error stating"Could Not Initialize the Core".

This is a 32bit windows Home XP that i just did a fresh install of OS today.
I havent been keeping up with the development of Mach4 (starting a new chapter) , so does Mach4 Ver 2 work on XP?
Thanks,
Troy
Title: Re: Mach4 Install on XP
Post by: dude1 on December 10, 2015, 05:58:03 PM
try installing as admin it seems that is a problem at the moment with xp machines
Title: Re: Mach4 Install on XP
Post by: TDAY on December 11, 2015, 07:07:27 AM
User is set as admin. Also forgot to mention after closing the first error message, i get another stating 'There was a problem loading the screenset "" '.
Title: Re: Mach4 Install on XP
Post by: dude1 on December 11, 2015, 04:23:54 PM
do you start as admin
Title: Re: Mach4 Install on XP
Post by: TDAY on December 11, 2015, 05:30:00 PM
Yup.
Title: Re: Mach4 Install on XP
Post by: dude1 on December 11, 2015, 05:34:00 PM
can you put it on line and run update's you may have something missing, and yes window update still works for xp
Title: Re: Mach4 Install on XP
Post by: patton on December 12, 2015, 11:29:03 AM
do you have .net framework 3.5 and vcredist 2013 installed?
Title: Re: Mach4 Install on XP
Post by: TDAY on December 12, 2015, 10:28:06 PM
No, there is no .net nor vcredist 2013, unless Mach4 installed them. Ill check it out Monday and post my results.
Thanks,
Troy
Title: Re: Mach4 Install on XP
Post by: Steve Stallings on December 12, 2015, 10:51:52 PM
I think those requirements only apply if your are trying to use the legacy Darwin parallel port driver.
Title: Re: Mach4 Install on XP
Post by: patton on December 12, 2015, 11:32:54 PM
Mach4 uses the .net for sure........ not sure about the vcredist.
Title: Re: Mach4 Install on XP
Post by: Steve Stallings on December 13, 2015, 12:00:38 AM
The Mach4 core was written as a cross platform program that will run under Linux and OSX,
neither of which natively supply .NET services. This is why the core does not depend on
.NET services.

I just confirmed that my XP machine does not have any version of .NET installed and it
runs Mach4 fine.

Plug-ins are another matter. Developers of plug-ins can and do sometimes require .NET
for their products. Vital Systems and others may require .NET to run. The SCU setup
utility used with the Ethernet SmoothStepper needs .NET, but it is possible to configure
a SmoothStepper without it. PMDX SmartBOB products do not currently depend on .NET
software.
Title: Re: Mach4 Install on XP
Post by: patton on December 13, 2015, 01:30:53 AM
all I know is Brian said something about they use wx widgets and it needed .net 3.5 framework..... this was when it was first released. point me to a copy of mach4 that will run on linux..... that would be awesome..... my guess is that won't happen for several years....... hopefully I'm wrong ......my xp machine would not install mach4 until I installed the .net framework.... unless something in version 2 has changed that. after I was told that .net was needed I never tried to install mach4 without it.
Title: Re: Mach4 Install on XP
Post by: Steve Stallings on December 13, 2015, 02:57:13 PM
I have confirmed that neither wx widgets, nor anything else that is put on the
host computer by the Mach4 installer uses the .NET framework.

As best I can tell, plug-in dependencies are:

Ethernet SmoothStepper - the actual plug-in does not seem to need .NET but the SCU
    (system configuration utility) does use .NET but use of the SCU is optional

Darwin legacy parallel port driver - needs .NET

Vital Systems HiCON - the plug-in may run without .NET but the configuration utilities
    and libraries to support extra APIs and expanded functions such as their internal
    MACRO language and their Closed Loop system do need .NET

CS Labs MIO series - needs .NET

PoKEYs - as best I can tell, all PoKEYs devices need .NET for configuration and operation

PMDX SmartBOB series - does not need .NET
    We chose not to use .NET because we wanted to be able to support alternate
    operating systems in the future. There are no current plans to offer Mach4 on
    Linux or OSX, so don't jump to conclusions here.

All Windows systems from Win 7 and later natively included the .NET framework, so
only XP users are actually affected by the need for .NET and it can be installed as
needed on XP.

Regards,
Steve Stallings
PMDX
Title: Re: Mach4 Install on XP
Post by: TDAY on December 14, 2015, 08:16:14 AM
Ok, PC does not have the .NET 3.5. So i downloaded the full 3.5 service pack 1(231MB) and installed. Now Mach 4 launches with no errors. Will report later if anything more pops up.
Thanks again,
Troy
Title: Re: Mach4 Install on XP
Post by: Steve Stallings on December 14, 2015, 08:35:23 AM
Troy,

Your experience indicates that something strange is going on. Were you
trying to run an existing profile that may have been configured to use a
plugin other than the Simulator that is installed for the Mach4Mill default
profile?

I have verified that my XP machine does not have .NET and it will load
and run Mach4.

If you get any further hints as to what is going on, please let us know.

Steve Stallings
PMDX

Title: Re: Mach4 Install on XP
Post by: patton on December 14, 2015, 08:47:25 AM
Troy....... I would recommend upgrading to servicepack 3
Title: Re: Mach4 Install on XP
Post by: Steve Stallings on December 14, 2015, 08:59:39 AM
I wonder if that .NET install included the service pack 3 update by default.
Title: Re: Mach4 Install on XP
Post by: TDAY on December 14, 2015, 09:38:11 AM
The windows XP disk i used to install is Service pack3. There was not any Mach software installed before i tried Mach4. I installed OS and then tried to install Mach4. Nothing else was installed.
Only profile i used is the one installed by Mach4.
Title: Re: Mach4 Install on XP
Post by: Steve Stallings on December 14, 2015, 09:56:00 AM
Troy, thanks for the info.

Now I have to find time to set up a virgin machine to test again.

Steve Stallings
PMDX
Title: Re: Mach4 Install on XP
Post by: TDAY on December 14, 2015, 10:43:01 AM
:) Sorry for the extra work load ;)
Let me know if i can do any testing for you with the current PC setup in question, as i can wait on installing it on machine.
Troy
Title: Re: Mach4 Install on XP
Post by: Steve Stallings on December 14, 2015, 11:06:01 AM
Thanks, but since installing .NET cures the problem, this is mostly an academic question.

I want to know so I can avoid possible issues in the future with non-Windows systems.

The guy writing the core code assures me that there are no .NET dependencies in
the code, but something could have crept into the installer along with all the non-core
stuff that gets into the package.

My regular test XP machine has been running Mach4 for well more than a year and it may
have something successfully installed that cannot now be installed without .NET present.

Steve Stallings
PMDX
Title: Re: Mach4 Install on XP
Post by: smurph on August 04, 2016, 04:13:56 PM
We do not use .net at all.  Mach 4 is all native C++.  Some 3rd party plugins may require .net.  But we don't. 

The 2013 runtime redistribution package may be required to be installed (and you will need to be Administrator to do it).  We supply the runtime files in the Mach 4 directory but some XP systems are incapable of using the runtime in a side by side (SxS) configuration.  I believe some KB update needs to be installed in order for SxS to work in XP, although I do not know which one it is.

Steve
Title: Re: Mach4 Install on XP
Post by: rdibley on January 16, 2018, 09:28:21 AM
Was this the final resolution on the problem? 

I'm trying to run Mach 4 4.2.3481 on a Windows XP machine that's been updated to the XP Service Pack 3, but I've stripped out as much as possible since this will be dedicated only to running Mach 4.  When I tried to run Mach 4, it gave me the message that the core could not be initialized, and stated: "rc = -17" in the error message.  I have an Ethernet Smooth Stepper, and installed NET 4.0 as part of the installation process for it.  Is there a difference between NET 4.0 and NET 3.5? 

I installed the .NET service pack 3.5 and it now runs, but it takes more than a minute for Mach 4 to come up, and the screen scaling changes.  If Mach 4 doesn't require .net, how is it that it now runs?

I should also mention that I was able to run an earlier version of Mach 4 on this same computer, using the same XP image as a starting point.  I also had Mach 3 installed, so I don't know if it installed something that made Mach 4 work as well?

Should I be trying the 2013 runtime redistribution package?  I don't understand the side by side configuration, but has anyone been able to get it working using your recommended method?  What is a "KB update" referring to?

Thanks.

Ryan



Title: Re: Mach4 Install on XP
Post by: smurph on January 16, 2018, 12:25:38 PM
I strongly suspect your XP was missing some dependency (like the printing subsystem) that the .net installation corrected.  Some plugin that you are using might require .net (ESS maybe? I don't know).  But Mach does not require .net for the GUI and core.  It never has and never will.  I'm not a fan of anything .net and I will do ANYTHING not to use it.  But Microsoft pushes that stuff like crack!  So some program installers (the programs that install the applications) try to include it whenever they can, by default, unless the programmer writing the installer explicitly turns it off.  Obviously, our installer does install .net.  But that might explain why .net is installed with other applications, even if it is not used or needed. 

Side by side is the term used when referring how DLL dependencies are loaded.  Old school Windows would load DLLs in the Windows/System32 directory, if they existed there, first.  Side by side give preference to the DLLs in the application's directory.   Side by side, or "SxS" was the fix for "DLL Hell" caused by different versions of the same DLL.  ComCtl32.dll, for instance.  If a newer version of that DLL exists in the application directory, it will use it instead of the ComCtl32.dll in the Windows\System32 directory. 

At one time, Mach did not require any of the printing subsystem.  So it might have installed and run previously.  But we added printing in the G code and LUA editors, so that subsystem is now required.  It is possible that installing the .net stuff also installed a missing printing subsystem, etc... 

There is a program called Dependency Walker that is used for figuring stuff like this out.  But I will be the first to say that it is cryptic and hard to use.  But if you strip down the OS to the point of the application not being able to run, you may have to use a tool like Dependency Walker to figure out what is needed.  Or, get lucky and install something like .net that happens to also install the needed dependency. 

Since Mach 4 is now running, but takes a long time to load, it may be a virus software thing.  For example, Windows Defender delays the loading of Mach when it is launched for the first time in a certain amount of time.  It scans the EXE and all of its' dependencies before launching.  And it can delay the launch for a ridiculous amount of time!  Excluding Mach4GUI.exe in Defender sizes the problem.  There is another post on this forum related to that.  So look for something like that. 

Also, think about upgrading your Operating System.  Microsoft ended support of XP on April 8, 2014.  So we are coming up on the 4 year anniversary of that date.  My current compiler (Visual Studio 2013) won't even run on XP!  Luckily, it will still compile an executable that will run on XP.  We have to do some tricks to even get an executable that will run on XP with 2013.  I would say the writing has been on the wall that XP is dead has been there for a good period of time now.  We are fixing to make the jump to the Visual Studio 2017 compiler and there is no guarantee that it will even produce an executable for XP.  If it doesn't, then that will end Mach 4 running on XP, for sure.  :(  My point being is that we are fast running into the possibility of not being able to support XP.  Windows 10 seems to be a very stable OS at this point.  As good or better than Windows XP. 

Steve
Title: Re: Mach4 Install on XP
Post by: rdibley on January 18, 2018, 02:05:17 PM
Thanks for the reply and all the information. I hate to say it (after you wrote all of that), but I’m taking your advice from your last paragraph and upgrading my OS.  This computer will only be running Mach and the ESS plugin, and would never be connected to a network, so XP was still an option.  But trying to get new software (or hardware) to run on an obsolete OS isn’t much fun!