Вы должны пропустить ошибку (обычно не рекомендуется, но здесь неизбежно). Не забудьте переустановить проверку ошибок после выполнения этой строки.
With .Range(.Cells(1, 1), .Cells(lr, lc))
For rw = 1 To .Rows.Count
On Error Resume Next
Set delrng = .Rows(rw).SpecialCells(xlCellTypeBlanks).Cells
On Error GoTo 0
If Not delrng Is Nothing Then
delrng.Delete Shift:=xlToLeft
End If
Next rw
End With
Yowser! Вы случайно получили некоторые огромные resx файлы (или другое встроенное содержание), которые становятся встроенными в dll? Возможно, рассматривайте тех, которые как внешнее содержание? Я запустил бы путем рассмотрения файлов в дереве проекта..., что 20 МБ должны прибыть из куда-нибудь очевидного - крупная графика и т.д.
Проводник PE покажет Вам содержание.
Это может также помочь?
Обновление: Зависимость Walker может также помочь здесь. Можно выполнить его в "Режиме Профиля", который работает путем выполнения приложения и наблюдения его для наблюдения то, что это загружает.
Microsoft.SharePoint.dll составляет 9 МБ. Даже для сложного продукта как SharePoint, DLLs разделены на отдельные проекты.
Если у Вас есть крупный проект и что ничто не прибывает из ресурсов, я мог бы предложить разделить Ваш проект на различные блоки?
Я видел точную ошибку, которую Вы имели, но на среде VS2003 (который Microsoft показала на support.microsoft.com). Однако, так как Вы находитесь в VS2008, это могло бы также произойти из-за проблемы дискового пространства.
Вы проверяли, что все диски, используемые Visual Studio, не полны/почти полный?
Ой! Найденный набором (50 +) огромных шаблонов отчета, сгенерированных с помощью Crystal Reports, каждый приблизительно 1 МБ.
Все, что мы должны были сделать, исключало их из проекта.