I need to detect if MongoDB is installed on a Windows machine in my app installer.
Does anyone know what I can look for in the registry to be sure it is installed?
I've searched the entire registry and researched on SO and google for hours. Mongo registry entries are using GUID keys, so these change per install and I don't think I can find it this way in innosetup.
I'm hoping someone has already solved this problem and can help me so I don't have to spend more hours reinventing the wheel. Thanks to anyone with useful information.
The default installation directory for MongoDB on Windows would be: C:\Program Files\MongoDB
Reference: http://docs.mongodb.org/manual/tutorial/install-mongodb-on-windows/
Also, Detecting installed programs via registry for the registry angle!
For more information, google!
Open the command prompt and type "cd c:\program files\mongodb\server\your version\bin". After you enter the bin folder type "mongo start". If you get either a successful connection or failed one it means it's installed at least.
The problem is that the user could have installed MongoDB via a zip file -- so there wont be any trace of the installation in the registry at all. You could go the extra mile and try to connect to the standard 27017 port and try to get a status, but what if mongodb is not running at the moment? There is no good answer here -- simply ask the user if he has MongoDB installed and whats the directory. Its not very "automated" but in this case, it is more reliable and less problematic.
Searching for the file mongod.exe in all the files might work in this case, if user has installed from zip file still this method will work.
Related
Oracle form downloaded at:
http://www.oracle.com/technetwork/developer-tools/forms/downloads/index.html
When I ran the file setup_fmw_12.2.1.3.0_fr_win64.exe,
it gave me an error "Cannot launch the installer (555)".
fmw_12.2.1.3.0_fr_win64_Disk1_2of2 <-- Folder
setup_fmw_12.2.1.3.0_fr_win64-2.zip
fmw_12.2.1.3.0_fr_win64_Disk1_1of2 <-- Folder
setup_fmw_12.2.1.3.0_fr_win64.exe
Even though this relates to the installation of a developer tool, most would consider this particular type of question as generally off topic for stackoverflow. Your question also contains too little information to determine what the problem really is.
However, let's just mention some obvious things to see if it helps you solve your own problem:
Did you try the setup on another computer (or a virtual machine). This could be a good way to avoid the whole problem rather than spending a lot of time trying to fix it.
Did you locate any log files for the failed install?
A quick look seems to indicate that you can find log files at: %SystemDrive%\Program Files\Oracle\Inventory\logs (%SystemDrive% is normally C:\).
Or %SystemDrive%\Program Files (x86)\Oracle\Inventory\logs for 32bit installers on 64 bit systems).
Found in the troubleshoot section here - have a look yourself too - read from the top.
And the most obvious of all: did you contact Oracle support or search their user community or knowledge bases? Somebody will have seen this problem before. Looks like you need to register: https://support.oracle.com/
A quick search reveals that the Oracle Universal Installer is a Java based installer. Could Java be broken on the box you install on? (looks like the launcher should install the runtime automatically, but this could fail due to special conditions on the box. Try on a clean virtual machine). How to check whether java is installed on the computer.
Try disabling your anti-virus as well before running the setup on the problem box. Some setups even try to access the Internet during installation, and then your firewall could be a problem too. I would hate to turn that off though.
I have a French client with the French version of Windows 10. However, our Installshield-built installer is looking for C:\Users\username\Local Settings\Application Data, and fails with "Error 1320. The specified path is too long"
We tried to see if we could connect to the appropriate Local Settings\Application Data folder (in English), but it is either not accessible or even as admin we don't have privileges to go there (even from an admin command line).
I understand Windows 10 has some sort of invisible aliases or compatibility for these standard folders?
Are there any tricks we could use to get the software installed?
Disclaimer: this is a hack and the correct answer was provided by slugster - rebuild the MSI
Now that that's out of the way I do have a suggestion for you that might be able to resolve the problem for you. You can try creating the path that the installer is looking for and then creating a symlink to link that folder to the correct folder on the users machine. no guarantee that this works but might be worth a shot. If you need more info on creating symlinks check out hte TechNet page for MkLink
I built a Lazarus program and it's now in exe form.
I am able to run it on two of my computers running XP and Vista.
However, there are other computers as well running XP, Vista and Win7 but I cannot get it to run at all on them.
There are no errors, nothing... Has anyone else had this issue?
The program is connecting to a postgres DB on my LAN server.
Any idea on fixing this is really valued.
NEW INFO:
Maybe I'm wrong but here's a thought... On the development machine, I initially got an error like **libpq.dll* not found when I first tried to connect to postgres. Then after setting the path, it was fine. I'm thinking now if it cannot find that library and that's why it's not able to run.
If this is the case, should my line Application.OnException:=#CatchErr; catch the error? If not how else should I check if this dll or anything else is missing?
First, a sincere and big THANK YOU to Marco and MArtyn for the great tips and guidelines hat got me thinking of this strange issue.
Here's what happened...
I installed a fresh copy of Windows 7 and XP. As usual it did not work.
Then I suspected the old problem of libpq and then I copied libpq.dll from my working OS and put it in the application folder. By the way this machine has no Lazarus or Postgres. The moment I did this, I got my first error message saying that msvcr100.dll was missing.
And then I copied that as well. So the cycle of copy pasting went on for each and every error until I had finally brought these files to my 'non-working'.
libpq.dll - 9.2.1.12263 - PosgreSQL Access Library
msvcr100.dll - 10.0.40219.1 - Microsoft C Runtime Library
ssleay32.dll - 1.0.1.2 - OpenSSL Shared Library
libeay32.dll - 1.0.1.2 OpenSSL Shared Library
libintl.dll - 0.18.1.0 - LGPLed libintl for Windows NT/2000/XP/Vista/7
Once these files came in, the problem was gone!
Now the program works great :)
Thanks for all your inputs!
I now have to see what the above files have to say about their licenses as I have to distribute the app to other users. But I'm glad at least we figured out the problem.
No, base Lazarus programs don't require special permissions. Of course it could be that a specific functionality in the program requires special permissions (like access to ports below 1024, access to certain paths etc).
Also be aware that EXE's downloaded from what the system considers insecure sources (internet, certain kinds of shares) might be blocked by default. If that is the case, if you take the properties of the .EXE in windows explorer, there will be an "unblock" button.
Anything network related of course requires proper configuration of the firewall. The popups that query you might not always come, in case of doubt configure the firewall manually.
I'm totally new to windows 7 and have just installed Apache server. I want to change httpd file... But when opening file with notepad and saving it, I get a message that I have no rights... My user is a member of Administrators group. What else can I do?
Thanks
P.S. Could you suggest any nice tutorials on dealing with user administration and admin accounts?
You need to take ownership of the folder, which requires a registry hack. (You can search for takeown registry)
My advice is to install your Apache server outside of "Program Files". You should not have files requiring regular modifications in Program Files.
Maybe try a different editor, say NotePad++. Run in Administrator. Also make sure that Apache is not running and any related tasks are shut down. Try it in Safe Mode if you get desperate.
I downloaded xampp 1.7.3 (32) on windows 7 (64) in the programs(86) folder. both MySql and Apache refuse to run, they start and then instantly turn of. All ports are free.
So I decide to uninstall however, when i run the uninstaller I receive the following error
"Input Error: Can not find script file "C:\Program Files (x86)\xampp\uninst.temp\xampp_uninstall.vbs" XAMPP uninstall not OK
Why is there spaces in the above line and does this matter "C:\Program Files (x86)" ?
Can somebody please help me to understand the problem & uninstall xampp (or get it to work). It does not show in the control panel so I am stuck. The documentation clearly states the uninstaller should be used.
I have asked this question on serverfault but since ive had so much help here, i was wondering if anybody here knows what the problem could be?
All help is greatly appreciated. Thank you.
Uninstalling Service using XAMPP Control Panel for 1.7.3 and 1.7.7:
Right click on /xampp/xampp-control.exe, select Run as administrator, then remove the check marks next to the service you want to uninstall as a service. The trick here is to open XAMPP Control Panel using the 'Run as administrator' option.
If you experience some issues with the XAMPP Control Panel, you might need to do this from the Command Line. See next section for notes on this.
Uninstalling Service using Command Prompt for 1.7.3 and 1.7.7:
Apache: Locate and right click /xampp/apache/apache_uninstallservice.bat, select Run as administrator, follow prompts until completed.
MySQL: Locate and right click /xampp/mysql/mysql_uninstallservice.bat, select Run as administrator, follow prompts until completed.
Additional Notes:
Much of what will work may depend on the user account you installed the service to run as. The Run as administrator may not be necessary. However, it usually does the trick.
Also, you may need to restart your computer and use the Service Manager to Manually Stop the Apache and MySQL Services before trying to run the uninstall scripts.
Let me know if this works. It may require a few attempts.
Best of Luck,
David Carroll
Never install xampp to the x86 folder on windows 7.
directly to the C drive works fine.
Solution for the time being:
System Restore or delete the folder and pretend it never happened.
You may want to try rerunning the XAMPP installer. There may have been some files in the background that corrupted or did not copy correctly on initial install, so a reinstall might help. Also, if sometimes installers will give you the option to remove their program if they detect it is already installed. That might help you get it uninstalled if XAMPP installer supports that feature.
when you unisintall xampp on windows it rest xampp server on system. you must delete it before install another. to delete it open terminal as admin and tipe this command inside
sc delete sevice_name
replace service name by the name of xampp service in your computer to get it do this
tipe win+E --> right click on desktop and select manage(gerer) --> select service in the pannel who will be open and then fin xampp, frequently the name is XAMPP Service
good luck for the rest
Try to stop mySQL service.
Try to close any conf file opened in notepad and then try to uninstall.