This is a basic 3D CAD system I created.
It is written in VC++ using MFC and OpenGL.
This book is my working document for this CAD package.....
Deployment - Windows Installer (VS2019) 2022-Oct-05
To download this CAD program, visit: www.honda-e.com/CAD-download.htm
I am using VS2019 community version. I also installed Windows Installer for VS2019.
ClickOnce is not available for Windows applications, so I used VS2019 Windows Installer here to create a msi setup file for deployment for anyone interested in trying out this CAD package.
In VS2019, click Extensions -> Manage Extensions
-> select Microsoft Visual Studio Installer Projects -> then Close
Visual Studio 2019:
First, select the "debug" configuration and Build-->Clean Solution. Do the same
for "release". Then on "release" click Build-->Build Solution.
5. Type the Project name as "Setup_G2022" and location is ok as is.
Setup Wizard 2 -- Select a radio button : Create a setup for a Windows
application. Then Next.
7. Click Next. Finish.
Make sure to UN-INSTALL the old one first if any!!!!
Search “*.msi” in FileExplorer…
The msi file is found in ….\GS\Setup_G2020A\Release\Setup_G2022A.msi
15. Copy this .msi file somewhere in my Web folder. Then make a link to this file from my web page’s text (DOWNLOAD)............ That's it.
Some Notes for VS2008 – no longer needed in VS2019
After step 9 above ....
As noted above, if I have all DLLs copied into G\release\ folder, I get duplicate DLLs packaged in my setup... So I thought, if this is a case, I only need to select Primary Output from G, and I do not need to select all Primary Output from individual projects (since I caopied all DLLs under G\release). I tried this scenario to make a setup.msi. However, this did not work and I got an "ElemPipe.dll missing" run time error... So, selecting Primary Output for all DLL projects are needed (just make sure to delete all DLLs from G\release folder to avoid duplicates).
Also, make sure to delete all DLLs from G\release\ folder that you might have copied before to run the program. If we keep these DLLs in G\release folder, this results in dup DLLs to be packaged.