none
Error: 0x8973190e "There is not enough space on the disk" RRS feed

  • Question

  •  

    I have a Compact Framework written in C# made up of several projects. Most of the projects I can deploy to the emulator or a handheld without a problem, but on several of my projects, when I try to deploy I get the following exception:

     

    Deployment and/or registration failed with error: 0x8973190e. Error writing file 'assembly name'. Error 0x80070070: There is not enough space on the disk.

     

    To give you a better idea, on one of my projects the assembly listed in the error is "system.data.dll".

     

    I've been researching this problem for a while, and one common answer I've seen is that something in the code is forcing the including of a standard framework library to be included, but I looked at the references of the project and nothing stands out. In fact, just to test it, I created another project from scratch, added the same references, and was able to deploy it with out a problem.

     

    How would I go about determining what in my code could be forcing the deployment of a non-Compact assembly?

     

    Thanks for your help!

    Andy

    Friday, November 9, 2007 8:53 PM

Answers

  • I believe you mean _referenced_ assemblies (as in something your application references so it can be used), not “resource” assemblies (which usually contain resources like localized strings and bitmaps).

    So if that's all references you have then one or more of these would be compiled for the desktop. Say, it’s pretty common to add reference to the desktop version Systen.Data.SqlServerCe.dll and that would trigger deployment of the desktop framework DLL. Or, may be, it's a VB DLL.

    So go through all these referenced assemblies and make sure they are indeed NETCF version (check PKT and location). May be it would be even faster to remove all references and add NETCF references back. It should only take about 30 second to create fresh NETCF project and add sources to it from existing broken on.

     

    Monday, November 12, 2007 5:17 PM
    Moderator
  •  

    Hello Ilya,

     

    Yes, I meant to refer to them as "reference" assemblies, not "resource", sorry for the confusion.

     

    After some more digging, I think I was working on a false assumption. The project that I was unable to deploy because of the error stated in my original post, I was able to deploy after hard resetting my emulator. So, the emulator state is tied to a VS Solution correct?

     

    This leads me to believe that one of my other projects (in the solution), which I must have previously deployed (or tried to deploy) to the device put over a large assembly that's causing problems when deploying other, smaller projects.

     

    So to try and resolve this, I'm going to deploy my projects one at a time, each against a hard reset emulator, and then look at the name and size of the assemblies it's deploys.

     

    Thanks for your help so far!


    Andy

    Monday, November 12, 2007 8:36 PM

All replies

  • Hi

    is it possible that you use additional assemblies, which reference the asembly you said by themselves?
    You shall see during Deployment in the Output Windows, which assemblies get deployed on your device.

    Cheers, Peter
    Saturday, November 10, 2007 8:49 AM
  •  

    Hi Peter,

     

    The only resources assemblies I have for this project are:

     

    Microsoft.VisualBasic (my project is written in C#, but was converted from VB)

    mscorlib

    System

    System.Data

    System.Data.SqlClient

    Systen.Data.SqlServerCe

    System.Xml

     

    To test it out, I created an empty project and gave it those same resource assemblies, and that project I was able to successfully deploy to the emulator. So I figured it must not have anything to do with the project resources.

     

    When I do a deployment and look at the Output window, here's what I see:

     

    ------ Deploy started: Project: MySolution.MyProject, Configuration: Debug Any CPU ------

    Deploying 'C:\Windows\Microsoft.NET\Framework\v2.0.50727\System.Drawing.Design.dll'

    Deploying 'C:\Windows\Microsoft.NET\Framework\v2.0.50727\System.ServiceProcess.dll'

    Deployment and/or registration failed with error: 0x8973190e. Error writing file '%csidl_program_files%\MySolution,MySolution\system.data.dll'. Error 0x80070070: There is not enough space on the disk.

    ========== Build: 2 succeeded or up-to-date, 0 failed, 0 skipped ==========

    ========== Deploy: 0 succeeded, 1 failed, 1 skipped ==========

     

    Thanks for you help!

    Andy

    Monday, November 12, 2007 4:47 PM
  • I believe you mean _referenced_ assemblies (as in something your application references so it can be used), not “resource” assemblies (which usually contain resources like localized strings and bitmaps).

    So if that's all references you have then one or more of these would be compiled for the desktop. Say, it’s pretty common to add reference to the desktop version Systen.Data.SqlServerCe.dll and that would trigger deployment of the desktop framework DLL. Or, may be, it's a VB DLL.

    So go through all these referenced assemblies and make sure they are indeed NETCF version (check PKT and location). May be it would be even faster to remove all references and add NETCF references back. It should only take about 30 second to create fresh NETCF project and add sources to it from existing broken on.

     

    Monday, November 12, 2007 5:17 PM
    Moderator
  •  

    Hello Ilya,

     

    Yes, I meant to refer to them as "reference" assemblies, not "resource", sorry for the confusion.

     

    After some more digging, I think I was working on a false assumption. The project that I was unable to deploy because of the error stated in my original post, I was able to deploy after hard resetting my emulator. So, the emulator state is tied to a VS Solution correct?

     

    This leads me to believe that one of my other projects (in the solution), which I must have previously deployed (or tried to deploy) to the device put over a large assembly that's causing problems when deploying other, smaller projects.

     

    So to try and resolve this, I'm going to deploy my projects one at a time, each against a hard reset emulator, and then look at the name and size of the assemblies it's deploys.

     

    Thanks for your help so far!


    Andy

    Monday, November 12, 2007 8:36 PM
  •  

    Monday, November 12, 2007 8:36 PM
  • I am developing a Mobile 5 application that uses a class library which connects to SqlServerCe database with trivial data content. The mobile application retrieves data through properties of class in class library and poulates a combo. The problem is that I receive the following error

     

     

    Error 1 Deployment and/or registration failed with error: 0x8973190e. Error writing file '%csidl_program_files%\smartdeviceproject1\system.web.services.dll'. Error 0x80070070: There is not enough space on the disk.
       Device Connectivity Component 

    Please advise

     

    Thursday, September 11, 2008 11:02 AM
  • I've got the same problem here, when i try to deploy the application to test, i get the same error in here:

    Deploying 'C:\WINDOWS\assembly\GAC_MSIL\System.Configuration\2.0.0.0__b03f5f7f11d50a3a\System.Configuration.dll'
    Deployment and/or registration failed with error: 0x8973190e. Error writing file '%csidl_personal%\yedekparcasayim\system.windows.forms.dll'

    and i referenced to these dll's:

    DAL - data access layer that i wrote,
    mscorlib
    System
    System.Data
    System.Data.SqlServerCe
    System.Drawing
    System.Windows.Forms
    System.Xml

    Also i found out that it puts System.Web dll to bin directory of the application and it's about 5mb., so how can i solve this problem?
    Tuesday, October 21, 2008 9:03 AM
  • You must find and remove bad references. Probably your DAL is that bad reference. You cannot use it unless it would be recompiled for device. Or maybe it’s some other DLL. See above on how to check it.

    Tuesday, October 21, 2008 3:58 PM
    Moderator
  • Ilya,

    I'm having the exact same problem and it is the second time this problem occurred. How exactly should I check where is the bad reference? I have several projects that are part of the solution.
    Wednesday, May 27, 2009 3:20 PM
  • Thanks again, after checking each reference I found one (not in my project, but the project in the solution) that was referencing wrong dlls.

    I removed this project for now and all is well.
    Wednesday, May 27, 2009 3:52 PM