是什么导致Visual Studio将大量错误和重复的dll文件部署到我的windows移动设备上

本文关键字:部署 文件 dll 我的 windows 移动 Studio Visual 错误 是什么 | 更新日期: 2023-09-27 18:25:57

我有一个针对智能设备的Visual Studio 2008项目。它在一台计算机上构建、部署并在WM6模拟器中运行良好。只有.exe和我自己需要的一些dll被部署到虚拟设备上,不会占用太多空间。

现在我想在另一台计算机上安装这个项目,但VS试图部署大量的系统dll,直到空间耗尽。

我多次检查并重新安装了所有东西:VS2008 SP1、WM6 Prof.SDK Refresh、WM设备中心、Compact Framework 2.0 SP2和3.5。

Compact Framework 2已预装在移动设备上。我也试着安装3.5,但没有改变任何东西。

来自日志:

"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.

是什么原因导致了这种情况,或者我如何调查依赖关系
我错过了什么?应该安装其他东西吗
我还应该在这里发布什么?

是什么导致Visual Studio将大量错误和重复的dll文件部署到我的windows移动设备上

不知怎么的,我很幸运地发现Sybase DLL是原因,我现在开始工作了,所以问题已经解决了,但我仍然喜欢得到奇怪事情的解释:

这个DLL在另一台电脑上也是一样的。不同的是,在另一台电脑上,安装了Sybase,包括紧凑型框架DLL,而在这台电脑上安装了相同的版本,但只是非紧凑型。在这两台电脑上,DLL的压缩版本的副本都是从项目文件夹(而不是安装文件夹)中引用的,我根本没想到Sybase需要安装在电脑上——只有在目标设备上,这对我来说才有意义。

现在它变得更奇怪了:我用一个旧版本替换了这个DLL,它仍然有效——仍然没有安装在电脑上。只有这个DLL被部署到设备上,而不是所有的GAC文件,应用程序在那里工作。

在电脑上安装了新版本后,我也可以在我的项目中使用它。

因此,如果电脑上只安装了非紧凑版的DLL,问题就会出现。我想,如果我卸载Sybase,它也会起作用,这对我来说毫无意义

在不需要运气的情况下,需要采取哪些步骤才能找到答案?:)

如果我发现更多,我会更新这个答案。您仍然可以提交更好的答案:)