PDA

View Full Version : VB2010 express publish



matt6ft9
August 30, 2012, 20:53:51
When I try to publish my application, I get:
Error 1: Cannot publish because a project failed to build.
Error 2: An error occurred generating a bootstrapper: Unable to begin updating resource for bin\Debug\app.publish\setup.exe with error 800700C1.

So, I tried the example program “Grabbing an image” and I get the same error when I try to publish. (I can run “Grabbing an image” just fine in VB). I’m using Windows XP, 32 bit, Visual Basic 2010 express edition, with a DMK72BUC02 camera.

This forum post has almost the same error message:
http://www.theimagingsourceforums.com/showthread.php?324112-can-t-publish-x86-IC-3-2-app-with-VS2010-%28on-64-bit-PC%29-dll-not-found&highlight=bootstrapper
Smejki was able to resolve the error, but I have not been able to resolve the error yet.

I did change the external reference to “TIS_UDSHL09_vc10.dll” for the 2010 version of VB. I am able to publish other projects that do not use “The imaging Source” camera.
Any help would be appreciated.
Matt

Stefan Geissler
September 3, 2012, 11:26:52
Hi

This is a well known error of the publisher. You can search in the internet for it. Unfortunately, there is no reliable solution. You may try to start Visual Studio as Administrator and try again.

Better is using a more reliable toolkit like "Inno Setup". Its available for free.

dwsubc
September 3, 2012, 15:19:50
I would love to get this to work as well. The VS2010 publish button is ideal for developing software where you have to issue frequent updates to a test group.

I don't think it is a problem with VS publish because I have several apps using multiple 3rd party .NET components and they all publish without a problem. The only time I get a publish error is when I use the IC.NET framework. It's a real shame that TIS have put all the effort into producing a great framework but I can't use it apart from personal projects.

Dave

Stefan Geissler
September 3, 2012, 18:03:09
Dave,

it is a well known problem of the publisher. e.g. http://social.msdn.microsoft.com/Forums/en-GB/winformssetup/thread/e81d47d9-5df6-49b9-84b4-7bdbe77d3eaa

You can also publish it using the suggested setup tool.

Did you try to run Visual Studio as Administrator (right mouse click then "run as administrator")? This worked on my computer.

dwsubc
September 3, 2012, 20:17:54
Hi Stefan,

I tried all the suggestions that we talked about before but no luck. I also looked at Inno but it seems to require just as much work as my current stop-gap which is to issue zipped bin/Release folders.

Could you upload one of your sample projects/solutions that you can publish in VS2010 VB and C#. This would be a good starting point for us to see where we are going wrong.

Dave

Stefan Geissler
September 4, 2012, 09:04:44
Dave,

I am very sorry, but a sample, that can be published on my computer with VS 2010 professional must not necessarily be able to be published on another computer running the very same software. We tested this. I was able to publish a project and a colleague of mine was not able to publish it on his computer. We both run VS 2010 pro.

This is from a similar email support case:


Right click the project select properties. Click on "Publish", then the button "Prequisites". There is a
checkbox "Create setup program to install prerequisite components". Uncheck this. Then you can publish. However,
I would think, now the .NET framework is not installed automatically.

Do not forget to run VS 2010 as administrator.

Also I do not think, that the workaround from above makes sense in any case.

Please blame Microsoft for this error:

https://connect.microsoft.com/VisualStudio/feedback/details/551674/vs-2010-rtm-returns-error-cannot-publish-because-a-project-failed-to-build-even-though-solution-builds-fine#tabs

Quote of Microsoft:
(...)We've debugged this, and it ends up that it's a timing issue in the build system. I spoke to the engineer
in charge of the MSBuild build engine, and it ends up that the same problem existed in VS 2010, (...)

dwsubc
September 4, 2012, 11:00:37
Hi Stefan,

Losing the prerequisite setup program is a viable option. I can just tell my users to have .NET installed beforehand.

How did you distribute the 3x TIS and 3x MS dlls - as references? If so, what properties did you set for them in the Solution Explorer>Properties window and in the Publish>Application Files window?

many thanks
Dave

dwsubc
September 4, 2012, 15:01:52
Good news Stefan - I managed to get it to publish.

The trick was to disable the prerequisites setup program. I guess ClickOnce will still check for .NET on user PCs and issue a notice to install it if missing. I know it does this with my ASCOM apps.

Thanks again for your help and apologies for my perseverance.

matt6ft9
September 4, 2012, 23:17:11
Dave and Stefan,
Clicking off the “Create setup program to install prerequisite components” in the publish tab allowed the install application to be created. When I ran the install on one of the target machines, the .NET framework 4 installed. Now when I click on the install package, I get this message:
“Unable to install or run the application. The application
Requires that assembly TIS.ICImagingControl32
Version 3.2.4.1284 be installed in the Global Assembly Cache
(GAC) first.”
I tried putting in the camera CD and ran the driver install, the “software for end users” and the “software for programmers”. I thought this would put on the required files, but I still get the above message on the target machine. (32 bit, Windows XP) The camera does work on the target machine with the “IC capture 2.2” software.
(I did look at the Inno program, but had some difficulty with the configuration file. I'm not sure what files need to go where)
Matt

dwsubc
September 5, 2012, 13:12:47
Good news now bad news. My testers reported all sorts of errors when they installed my app. Back to the drawing board.

Dave

Stefan Geissler
September 5, 2012, 13:35:03
Requires that assembly TIS.ICImagingControl32 Version 3.2.4.1284 be installed in the Global Assembly Cache
If your application was build with the specific version 3.2.4.1284, then you must make sure, you distribute this version. You can disable the version dependency in the project settings at the reference.
IC Capture does not install the .NET component and also does not requite the .NET framework. It was built with C++ only. IC Imaging Control SDK also does not install the .NET framework.


Good news now bad news. My testers reported all sorts of errors when they installed my app. Back to the drawing board.

What errors?

I also see, the chapter "Distributing your appliacation" in the .NET Component Users Guide" of IC Imaging Control shows the process for Visual Studio 2008 only. However, the process should be similar for VS 2010. But this can lead to the 800700C1 error too.

dwsubc
September 5, 2012, 13:54:21
One error was StartLive failed in GrabberPImpl.cpp at line 592.

Another was that Task Manager reported that several versions of my app were running concurrently even though none were visible to the user.

What is weird is that it works fine on my target laptop.

I am still trying out some stuff and I will let you know if I get it working.

Dave

Stefan Geissler
September 5, 2012, 17:35:08
One error was StartLive failed in GrabberPImpl.cpp at line 592.
This is fine, because this indicates, that IC Imaging Control is installed with all components. Otherwise the application wont run.


Another was that Task Manager reported that several versions of my app were running concurrently even though none were visible to the user.

Maybe they have been started and wait now to access the camera. This would explain the above error message. Which camera do you use?

dwsubc
September 5, 2012, 20:53:38
Stefan,

I think that my app is now working Ok from the published version. I have still to check that it auto-updates OK which I will do tomorrow.

The cameras are a mix of DMK21, 31 and 41, USB and firewire.

Dave