I have built an Excel Add In using Excel DNA and C#. I am able to build the app thru Visual Studio 2017 by setting it to Release and build. As of now, I distribute the excel add in by going to the release folder and copying the .xll file and pasting it to the users add in path on their machines. This process works but as you can tell not really professional. In addition, I am also using Azure to host winforms applications. My question, is what is the best way to distribute and possibly install the .xll file on users machine. (The install is really copying over the previous .xll file). Can I use azure to do this (Just hold the .xll file)? Or do I need to go thru Jenkins or similar type application.
A common approach to deploy Excel-DNA add-ins is by creating an installer that gets downloaded and run by the user.
https://github.com/Excel-DNA/WiXInstaller
https://jiripik.com/2017/02/25/use-advanced-installer-excel-dna-project/
Related
I created my Excel add-in using C # and Visual Studio. But how can I install it on another pc? There are only dll files in the release folder. How can I convert them to an installer or other file?
Am I missing something? Perhaps somewhere in the visual studio itself there is an opportunity to create an installer or another file that Excel can install.
Release Folder
First option:
If the issue is only to deploy files to a specific location in another PC,
I think that the option of "Inno-Setup" installer will be helpful to you.
https://jrsoftware.org/isinfo.php
Completely free for use
Very intuitive
An existing wizard for creating an installer from scratch
Much easier option:
Use winrar Self extracting archive:Example
It will allow the user to select installation location and deploy files.
I just made a new C# VSTO Excel COM Add-in. I deployed it by just going to build->publish, and created the Setup, VSTO Deployment Manifest, and the application files folder. I then copied it over to the user's machine and installed it, easy peezy.
I recently made a few changes to the add-in code and would like to update it on the user's machine. To do this, can I just repeat the process? When I run the setup of the newer version will it automatically update what needs to be update nice and clean?
Just wanted to ask before I potentially mess something up because in my experience these VSTO add-ins can be picky (but perhaps that's just been my lack of know-how).
Thank you!
If you want to get your add-in auto-updated you need to publish it to any web server and then install it from there. Then if required you may publish an update. Your add-in will be automatically updated. Read more about the ClickOnce installer in the Deploy an Office solution by using ClickOnce article.
I have completed making a word document in visual studio which I would like to be able to install easily on a number of computers. I am unsure as to how I am supposed to create an installer.I tired using just the build release( which contains the setup, the document itself, the vsto file and a folder called application files)and this worked to an extent but it does not allow me to install on computers without unblocking all the elements in the release and even then only works about half the time. I tried using the instructions found here https://msdn.microsoft.com/en-us/library/ff937654.aspx which worked well for me earlier when creating an outlook Add-In however the final result of this was just a setup and a windows installer without and document to use. The document does reside in bin\release and works there however, when i remove it from this folder it no longer works. What am I doing wrong and how should I proceed?
You could add the Word document to a VS Project as a resource (Build Action).
Upon application start, save the resource to a temporary file and open it.
The Application could be published using click once deployment.
I have built an Excel 2010 add-in for a customer, using C# and Visual Studio 2010. There's no UI requirement, just UDFs that are callable from the worksheet and from VBA. The same DLL contains an Automation add-in (for the worksheet functions) and a VSTO COM add-in (to provide VBA access to the add-in functions). It has 32-bit and 64-bit builds, and I also built a WiX installer (MSI) for it, also in 32-bit and 64-bit versions.
The sources for this were many and varied, and mostly on StackOverflow (see this for examples) but it has been working fine up to the last release I sent out, about 27-Sep-2014. Since then the only change I have made was to switch from using a pfx-based code signing file to a .snk-based strong name key (for reasons I won't go into because they are peripheral to the issue and anyway I have reverted back to using PFX code signing now). The add-in uses other class library DLLs that are part of the VS2010 solution and are shipped in the installer. The WiX project has not changed in any way.
Recently I built and sent out another release because of minor changes to one of the included DLLs. The customer (using Excel 2010 32-bit) reported that after installing this, Excel can no longer see the UDF names in the Insert Function Wizard, and if they are typed into a cell they just evaluate to #NAME?. If they revert to the previous installer I sent them, that still works.
I tried the new 64-bit installer on my own development machine (Excel 2010 64-bit) and see the same effect. However if I then rebuild the solution in VS2010 on this same machine, Excel can see the names again. (Whether Excel is run from within or outside Visual Studio). Uninstall/reinstall via the installer (or repair) - names gone again. I have tried doing images of the Registry before and after the VS2010 rebuild, but all that seems to change is the location of files from the installed directory to the build directory. The DLL files themselves (and all the GUIDs, TLB etc) are all exactly the same. The UDFs can still be called from VBA via the COM add-in.
I can't post the code as there is too much, so my next step is to build a minimal add-in and installer using the same principles but with only one UDF and no extra DLLs, to see if this issue is reproducible. If it also has the problem I'll post it here. In the meantime can anyone provide a clue as to what could be causing this? What mechanism does Excel use to gain access to the function names in a loaded automation add-in?
I am having a issue regarding my deployment of my software in Visual Studio 2012. First of all I am not able to install the "InstallShield Limited Edition" through VS12 so I am currently testing out Advanced Installer instead.
Mys issue comes due to the fact that in my program I am fetching a .pdf file and modifying it and later on showing them to the user. These PDF:s is in the programs resources folder but does not follow with the installer, so my application crashes since it cannot find this. The same is for my .chm file (help file)?
My customer is using XP and when I try to publish the software directly from VS12 it works on my computer, Windows 8, but not on his computer. The application won't even start for him.
So how can I deploy my pdfs to the installer file, or why is this not accomplished already?
It seems that the PDF and CHM files are not imported automatically in the project. What type of project have you created in VS?
To add those files in the setup use the "Edit in Advanced Installer" button from the Advanced Installer VS extension and go to Files and Folders page. There you should add the two files in the desired folder and save the project.