What causes Visual Studio to deploy lots of wrong and duplicate dll files to my windows mobile device?

0

I have a Visual Studio 2008 project for smart devices. On one computer it builds, deploys and runs fine in the WM6 emulator. Only the .exe and some of my own needed dll's are deployed to the virtual device and don't take much space.

Now I wanted to setup this project on a different computer, but there VS tries to deploy lots of system dll's until space runs out.

I checked and reinstalled everything multiple times: VS2008 with SP1, WM6 Prof. SDK Refresh, WM device center, Compact Framework 2.0 SP2 and 3.5.

Compact Framework 2 is preinstalled on the mobile device. I also tried to install 3.5 but that didn't change anything.

From the log:

"C:\Windows\assembly\GAC_MSIL\System.ServiceProcess\2.0.0.0__b03f5f7f11d50a3a\System.ServiceProcess.dll" wird bereitgestellt.
"C:\Windows\assembly\GAC_MSIL\System.Data.SqlXml\2.0.0.0__b77a5c561934e089\System.Data.SqlXml.dll" wird bereitgestellt.
"C:\Windows\assembly\GAC_MSIL\System.Drawing.Design\2.0.0.0__b03f5f7f11d50a3a\System.Drawing.Design.dll" wird bereitgestellt.
"C:\Windows\assembly\GAC_32\System.Data\2.0.0.0__b77a5c561934e089\System.Data.dll" wird bereitgestellt.
"C:\Windows\assembly\GAC_MSIL\Microsoft.VisualC\8.0.0.0__b03f5f7f11d50a3a\Microsoft.VisualC.dll" wird bereitgestellt.
"C:\Windows\assembly\GAC_MSIL\System.Configuration.Install\2.0.0.0__b03f5f7f11d50a3a\System.Configuration.Install.dll" wird bereitgestellt.
"C:\Windows\assembly\GAC_MSIL\System.Runtime.Serialization.Formatters.Soap\2.0.0.0__b03f5f7f11d50a3a\System.Runtime.Serialization.Formatters.Soap.dll" wird bereitgestellt.
"C:\Windows\assembly\GAC_MSIL\System.Security\2.0.0.0__b03f5f7f11d50a3a\System.Security.dll" wird bereitgestellt.
"C:\Windows\assembly\GAC_MSIL\System.Windows.Forms\2.0.0.0__b77a5c561934e089\System.Windows.Forms.dll" wird bereitgestellt.
"C:\Windows\assembly\GAC_32\System.Web\2.0.0.0__b03f5f7f11d50a3a\System.Web.dll" wird bereitgestellt.
"C:\Windows\assembly\GAC_MSIL\System.Web.Services\2.0.0.0__b03f5f7f11d50a3a\System.Web.Services.dll" wird bereitgestellt.
"C:\Windows\assembly\GAC_MSIL\System.Configuration\2.0.0.0__b03f5f7f11d50a3a\System.Configuration.dll" wird bereitgestellt.
"(my project folder)\iAnywhere.Data.SQLAnywhere.dll" wird bereitgestellt.
"C:\Windows\assembly\GAC_MSIL\System.Design\2.0.0.0__b03f5f7f11d50a3a\System.Design.dll" wird bereitgestellt.
"C:\Windows\assembly\GAC_MSIL\System.DirectoryServices.Protocols\2.0.0.0__b03f5f7f11d50a3a\System.DirectoryServices.Protocols.dll" wird bereitgestellt.
"C:\Windows\assembly\GAC_32\System.EnterpriseServices\2.0.0.0__b03f5f7f11d50a3a\System.EnterpriseServices.dll" wird bereitgestellt.
"C:\Windows\assembly\GAC_MSIL\System.Deployment\2.0.0.0__b03f5f7f11d50a3a\System.Deployment.dll" wird bereitgestellt.
"C:\Windows\assembly\GAC_MSIL\System.Web.RegularExpressions\2.0.0.0__b03f5f7f11d50a3a\System.Web.RegularExpressions.dll" wird bereitgestellt.
"C:\Windows\assembly\GAC_MSIL\System.Drawing\2.0.0.0__b03f5f7f11d50a3a\System.Drawing.dll" wird bereitgestellt.
"C:\Windows\assembly\GAC_32\System.Transactions\2.0.0.0__b77a5c561934e089\System.Transactions.dll" wird bereitgestellt.
"C:\Windows\assembly\GAC_MSIL\Accessibility\2.0.0.0__b03f5f7f11d50a3a\Accessibility.dll" wird bereitgestellt.
"(my project folder)\my.dll" wird bereitgestellt.
"C:\Windows\assembly\GAC_32\System.Data.OracleClient\2.0.0.0__b77a5c561934e089\System.Data.OracleClient.dll" wird bereitgestellt.
"C:\Windows\assembly\GAC_MSIL\System\2.0.0.0__b77a5c561934e089\System.dll" wird bereitgestellt.
"C:\Windows\assembly\GAC_MSIL\System.Runtime.Remoting\2.0.0.0__b77a5c561934e089\System.Runtime.Remoting.dll" wird bereitgestellt.
Fehler bei der Bereitstellung und/oder Registrierung: 0x8973190e. Fehler beim Schreiben der Datei "%csidl_program_files%\myapp\system.xml.dll". Fehler 0x80070070: Es steht nicht genug Speicherplatz auf dem Datenträger zur Verfügung.

What could cause this or how could I investigate the dependencies?
What did I miss? Should anything else be installed?
What else should I post here?

c#
visual-studio-2008
deployment
windows-mobile
compact-framework
asked on Stack Overflow Oct 7, 2014 by maf-soft • edited Oct 8, 2014 by maf-soft

1 Answer

0

Somehow just by luck I found out the Sybase DLL was the reason and I got it to work now, so the problem is gone, but I still like to get an explanation of the weird things:

This DLL was the same on the other PC, where it worked. The difference was that on the other PC, Sybase was installed including the compact framework DLLs, while on this PC the same version was installed, but only non-compact. On both PCs, a copy of the compact version of the DLL was referenced from the project folder (and not the installation folder), and I didn't expect that Sybase needs to be installed on the PC at all - only on the target device it makes sense for me.

Now it gets even more weird: I replaced this DLL by an older version and it worked - still without beeing installed on the PC. Only this DLL was then deployed to the device, and not all those GAC-files, and the application worked there.

After installing also the newer version on the PC, I could also use it in my project.

So, it seems, the problem occurs if the same version of the DLL is installed on the PC as non-compact only. I suppose, if I uninstall Sybase at all, it would work, too, and that makes no sense for me.

What would have been the steps to find out without needing luck? :)

I will update this answer if I find out more. You can still submit a better answer :)

answered on Stack Overflow Oct 7, 2014 by maf-soft • edited Oct 8, 2014 by maf-soft

User contributions licensed under CC BY-SA 3.0