I'm writing a C# program in VS 2012 and am trying to figure out how to get it to run with having the user install it. What I'm looking to do is toss this small program out on the network and just have the users run it or put it on a USB drive and give it to them that way. How can I go about doing this?
Ask yourself this, why do installers exist? They exist to ensure that the client machine has all of the pre-requisites installed prior to running the application. Copying the bin directory will work, provided the machine has all of those pre-requisites, and if you can guarantee that (like in some corporate environments), then you are good to go.
If you are developing in VS 2012, then you may be targeting .net 4.5, which many people may not have installed on their machines. If you use any third party COM components then you will require steps to register those before you start your application.
If your application requires admin rights and the user doesn't run it as admin, it could fail unexpectedly, if you don't have an installer set it up properly.
There are a lot of scenarios that are helped by installers. If you have a very simple application, then all should be OK by copying the bin folder, but make sure you understand the scenarios where it will not work, so you know how to support it.
Related
I use a machine where I don't have administrator rights. I've been able to run programs without admin rights by extracting the program's .zip file to a directory I have created on my desktop. However, I can't find such a .zip file for Visual Studio.
Is there a way to install Visual Studio Community Edition without administrator rights?
Practically no. Visual Studio (Express and above, excluding VS Code) consists of multiple components that must be installed as admin, and will be required for the app you're debugging to be available as system-wide component. It might be possible to use ThinApp or its equivalent, but ThinApp can't even work with VS 2010 and it was by far the best of its class.
A (resource intensive) alternative to get VS on any PC will be packaging a VM with VS installed, either creating one yourself or get a ready-made ones. VirtuaBox is available as portable fork if you can't even get Hyper-V tools installed. But this still require kernel drivers installation, which means at least one-time admin access. Depending on your internet connection & budget, it might be more practical to setup a VPS with VS installed, then remote there.
Basically, youre going to need to download an iso of windows, then download QEMU, and run it as invoker by doing that batch file thing (https://techcult.com/how-to-install-software-without-admin-rights/). Set it to anywhere, and then figure out how to boot it to QEMU cause I have absolutely no idea how (ive only done it with Kali Linux). and just install VC on there. Sorry about being so vague.
There is no way to install or use Visual Studio on Windows without admin rights. You can either use a different program to write your code in and then compile using a different compiler. Or use qemu (since it does not require admin rights) to run a windows virtual machine.
I am upgrading Visual Studio and it's 14 gigs in size. My worry is with my internet connectivity.
If my connection fails, would it start afresh or continue with what's not loaded in the system?
I know this isn't a programming question but I would appreciate your help.
I can't give you a definitive source, but in my experience the VS installer simultaneously downloads and installs its components. The already downloaded components are locally stored (I think even in the directory from where you start the installer) and will be re-used if you cancel the installer and restart it. That way you could even share the downloaded files among multiple computers.
However, as state in the comments, there are offline installers available. If your connection is wonky, the web installer might even be a better bet since your ISO or whatever may or may not be resumed if partially downloaded.
I have an Office solution for Word 2007 that I publish using ClickOnce. When I publish it to a local directory, I can install the .vsto file and everything works. When I publish it to our web server, though, I cannot install it. The error I get is:
Downloading file:///C:/DOCUME~1/Dave/LOCALS~1/Temp/Application Files/MyApp_1_0_0_0/MyApp.dll.manifest did not succeed.
I have been Googling for most of the day, and have already tried the following:
Added the correct MIME types to IIS 6 config (as described here and here on MSDN).
Created a test certificate, imported it into my trusted root authorities, and signed the app with it.
Published the solution to a network share and tried installing from there. It worked fine.
Tried accessing the MyApp.dll.manifest file directly from the web URL. The browser is able to find the file just fine.
What am I missing? Thanks.
Make sure that Windows Installer 3.1 is installed on the end-users PC. If it's not, you may want to add it as a prerequisite to your application.
Also, you may want to check and see if the application is installed from the Windows Add/Remove Programs screen. If it is in the list, you may need to uninstall the application, first. I know, you're probably thinking 'But the application hasn't been installed yet.'
Quite a few application that are published via ClickOnce. ClickOnce works great most of the time, but every now and then I see users who run into hiccups similar to yours when they try to initially install the application. The best solution is to usually uninstall all prerequisites, reboot, manually re-install the prerequisites (not from the ClickOnce setup.exe file) and then launch the application.
Some of those steps may not be necessary but it tends to fix the problem nearly every single time.
I found Vb6 tools package and deployment. I used it and created a package or setup file from my running vista operating system. Later when i tried deploying it in clients computer with winxp, it asks for update of system file and ask to restart. The process never ends just ask for update and restart. how should i create setup file to avoid this problem?
Edit:
If i create setup file in Win98 and deploy it in clients Vista or winxp then it runs fine...
There is a very good chance you are trying to deploy system files that you shouldn't. Typical examples include MSVCRT components.
You receive multiple "System files are out of date" error messages when you install a Visual Basic 6.0 application
Using Win9x can mask the problem because ancient versions are packaged. During installation either setup1 will detect that newer versions are already in place or Windows will fend them off via System File Protection. Vista is much better at this than XP was.
Yes, the PDW is old. For that reason you should seek out the MSKB articles on usage tips, newer information, and on manually updating the files PDW uses as guidance (its REDIST folder, VB6DEP.INI and the .DEP files that accompany many controls).
Best practices for deploying Visual Basic 6.0 applications is a good generalized starting point.
Many of these sorts of issues have been answered over the years since VB6 and the PDW were released.
The VB6 package and deployment tool is really dated. It doesn't play well with some of the new security features.
It's probably trying to install old copies of the VB6 runtimes and then Windows is restoring its own copies.
It's been a while, but can you remove the VB6 runtime files from the files to deploy in the Package and Deployment Wizard? If so, do so. As long as the computer being installed on has the latest service packs it will already have the VB6 runtimes on it.
If that doesn't solve your problem then check what other system files your deployment project has in it. In most cases you won't need to deploy any system files as modern, patched systems should have them all. There are a few activeX controls that may not be on modern systems, but those shouldn't cause these endless restart problems.
Alternatively, try another install technology. You could create a setup project in modern versions of Visual Studio. Alternatively there are some very good open-source and commercial products.
I've used this one quite successfully in the past:
http://nsis.sourceforge.net/Main_Page
We have been given the directive to make sure that when we develop we are running out of the administrator and poweruser groups to prevent security holes. What are the steps to take to make this possible, but still be able to debug, code, and install when needed?
We develop ASP.NET as well as VB.NET applications.
Thanks!
Brooke Jackson
I have been developing a web application in a team of 5+ developers using ASP.NET 2.0 using Visual C# 2005 and Visual Web Developer 2005 for 6+ months. It was an internal application for our client and was targeted at Internet Explorer 6.0. I have been always using a non-administrator account on my machine and have never run into any problems. Specifically, I have not experienced any problems with debugging. Right now I am switching to a Visual Studio 2008 and I hope everything will work just as it does now.
I am using a laptop for development. A the same time I am moving around and connecting to the internet in different places and I use my admin account only when necessary. I really believe that running an admin account for every day tasks is the single greatest security threat, just because it is so common.
Beware, there seems to be a lot of issues with running VS as non-admin.
Seems silly to me. Run VS as admin/power-user locally with whatever minimal rights you need on the network for publishing to the users and whatnot.
Just makes sure that the applications you CREATE with VS still work without those extra rights.
Use Vista, and take advantage or UAC, because that's UAC allows you to do. You can give VS full rights when needed, and the application/website limited rights.
I'm running VS2008 on Vista with UAC enabled. I've only had one issue worth mentioning.
I occasionally have weird file permission issues when I've run VS with elevated privileges then later run it without them. VS won't be able to delete the old build files, but if I delete them from Explorer its fine. Again, this only happens when switching between elevated and non-elevated permissions.