This solution was built in VS 2005.

Pay attention to paths that are referenced anywhere and everywhere. This includes
the references to the Revit.dll, which I have included in a directory under this 
solution; however, you can reference your own path. I built this solution under
the C:\Temp directory.



Under the Revit directory there are two solution directories, one API directory and two files.

(Directory) Solution: RevitPlugin
   Project: MainDLL - The main entry point for our Add-In to Revit. (see .ini entry below)
   Project: Bridge - Called by the MainDLL to process a specific DLL that implement our IRevit 
		     Interface and invoke methods whthin that DLL. This can be made to systematically
		     load multiple DLL's, etc...

(Directory) Solution MainForm:
   Project: MainForm - This is the DLL that's loaded into the byte array from the Bridge DLL.
		       It's the Main Form that get's loaded and the main GUI that gets launched when
		       the RibbonPanel button gets clicked. 

(Directory) Revit.API - Contains the RevitAPI.dll

(File) Revit.ini - The entry for the Revit.ini file. (Modify the count and reference as needed)

(File) README.txt - This file.



STEPS:
For a seamless test/run, uncrunch the .rar file to where the Revit directory is under the 
C:\temp directory.  i.e. C:\Temp\Revit 

(1) Modify the Revit.ini file to accommodate the MainDLL.
(2) Build the RevitPlugin solution in a separate instance of VS.
(3) Build the MainForm solution in a different instance of VS.
(4) Launch Revit by itself or by debug in VS from step 2.
(5) If you can click and successfully run the app from the Add-Ins Ribbon, then you've correctly set
    everything up the right way.
(6) Now close the MainForm app, that was launched from the Add-Ins ribbon button, but LEAVE REVIT OPENED.
(7) Go back to the MainForm solution/project in VS (step 3) and modify as needed. Rebuild the solution.
(8) Launch again from the Add-Ins ribbon button to experience the changes.



ADVANTAGE: Independently build the MainForm solution/project and test it without having to close
	   and reopen Revit every time.

DISADVANTAGE: MainForm cannot be debugged in Visual Studio due to the fact that it's DLL is loaded
	      into a byte array from the Bridge DLL.



You can contact me here: jmorse@corteksystems.com
However, please don't call CorTek, Inc asking for me.

Thanks...