Problem using AutomaticUpdater for .NET 4.0 on .NET 2.0

Hello-

I am having trouble getting aU 2.6 working. I have upgraded to .NET 4.0 and aU 2.6 (latest) but am getting the following error when I try to run my app. I am using the .NET 2.0 version as I can't seem to get the 4.0 .dll to installed as a reference in VS 2008. Hope this provides enough clues, thanks...

----System.BadImageFormatException was unhandled Message="Could not load file or assembly 'AutomaticUpdater, Version=2.6.1.0, Culture=neutral, PublicKeyToken=d2050be9b2e72e40' or one of its dependencies. This assembly is built by a runtime newer than the currently loaded runtime and cannot be loaded." Source="Anesthesia" FileName="AutomaticUpdater, Version=2.6.1.0, Culture=neutral, PublicKeyToken=d2050be9b2e72e40" FusionLog="=== Pre-bind state information ===\r\nLOG: User = wjsBox\\wjs\r\nLOG: DisplayName = AutomaticUpdater, Version=2.6.1.0, Culture=neutral, PublicKeyToken=d2050be9b2e72e40\n (Fully-specified)\r\nLOG: Appbase = file:///C:/Users/wjs/Desktop/ODVersions/opendental7.2b/opendental7.2/OpenDental/bin/Release/\r\nLOG: Initial PrivatePath = NULL\r\nCalling assembly : Anesthesia, Version=7.2.3857.17543, Culture=neutral, PublicKeyToken=null.\r\n===\r\nLOG: This bind starts in default load context.\r\nLOG: Using application configuration file: C:\\Users\\wjs\\Desktop\\ODVersions\\opendental7.2b\\opendental7.2\\OpenDental\\bin\\Release\\OpenDental.vshost.exe.Config\r\nLOG: Using machine configuration file from C:\\Windows\\Microsoft.NET\\Framework\\v2.0.50727\\config\\machine.config.\r\nLOG: Post-policy reference: AutomaticUpdater, Version=2.6.1.0, Culture=neutral, PublicKeyToken=d2050be9b2e72e40\r\nLOG: Attempting download of new URL file:///C:/Users/wjs/Desktop/ODVersions/opendental7.2b/opendental7.2/OpenDental/bin/Release/AutomaticUpdater.DLL.\r\nERR: Failed to complete setup of assembly (hr = 0x8013101b). Probing terminated.\r\n" StackTrace: at Anesthesia.FormAnestheticRecord.InitializeComponent() at Anesthesia.FormAnestheticRecord..ctor(Patient patCur, AnestheticData AnestheticDataCur) at Anesthesia.FormOpenDentalP.menuItemAnestheticRecord_Click(Object sender, EventArgs e) at System.Windows.Forms.MenuItem.OnClick(EventArgs e) at System.Windows.Forms.MenuItem.MenuItemData.Execute() at System.Windows.Forms.Command.Invoke() at System.Windows.Forms.Command.DispatchID(Int32 id) at System.Windows.Forms.Control.WmCommand(Message& m) at System.Windows.Forms.Control.WndProc(Message& m) at System.Windows.Forms.ScrollableControl.WndProc(Message& m) at System.Windows.Forms.ContainerControl.WndProc(Message& m) at System.Windows.Forms.Form.WndProc(Message& m) at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m) at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m) at System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam) at System.Windows.Forms.UnsafeNativeMethods.DispatchMessageW(MSG& msg) at System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(Int32 dwComponentID, Int32 reason, Int32 pvLoopData) at System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context) at System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context) at System.Windows.Forms.Application.Run(Form mainForm) at OpenDental.ProgramEntry.Main(String[] args) in C:\Users\wjs\Desktop\ODVersions\opendental7.2b\opendental7.2\OpenDental\Main Modules\ProgramEntry.cs:line 44 at System.AppDomain._nExecuteAssembly(Assembly assembly, String[] args) at System.AppDomain.ExecuteAssembly(String assemblyFile, Evidence assemblySecurity, String[] args) at Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly() at System.Threading.ThreadHelper.ThreadStart_Context(Object state) at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state) at System.Threading.ThreadHelper.ThreadStart() InnerException:

NVM, seems I had the 4.0 version installed in my app's folder.

But I'm still not sure why the 4.0 .dll cannot be added as a reference to VS 2008?

Visual Studio 2008 doesn't support .NET 4.0 assemblies. And .NET 2.0 programs shouldn't include .NET 4.0 assembly references (there are no advantages - only disadvantages).

So, the solution to both problems is get Visual Studio 2010 and compile your app for .NET 4.0. Otherwise, if your app is compiled for .NET 2.0/3.0/3.5 then use the .NET 2.0 AutomaticUpdater.

There's no conceivable reason to use the AutomaticUpdater for .NET 4.0. All the AutomaticUpdater .dlls included with wyBuild have identical features and are developed in tandem.