Windows Mobile 6.5 Build Time (VS2008)

I have a small mobile application for Windows with about 25 forms and maybe 50 classes divided into 3 projects. When I build a project, it takes 25 to 40 minutes for normal CTRL-SHIFT-B in debug mode .

I tried to skip the platform check but it doesn't seem to help.

Environment - VS 2008
Windows Mobile 6.5.3
Compact Framework 2.0

<ProductVersion>9.0.30729</ProductVersion>
<OSVersion>5.02</OSVersion>
<TargetFrameworkVersion>v2.0</TargetFrameworkVersion>
<NativePlatformName>Windows Mobile 6.5.3 Professional DTK</NativePlatformName>

The computer is an HP EliteBook 8440p with i3 @ 2.4Ghz, a 4GB bar.
There are many available Ram (2.2 Gb).
CPU usage around 25% at compile time.

When I create, the visual studio and all its child windows disappear for 95% of the time.

Eventviewer does not display any specific warnings, such as a bad hard drive.

Update 1

In the trace of the process monitor, I see that during the build there is normal network activity in the devenv.exe file. Could VSS have anything to do with assembly? (I get to the vss repository through the vpn tunnel that I had in bypass mode today.)

+5
source share
1 answer

Good news first: you can shorten the long build times and
here we go with the "bad news", work:

:

  • Com , (TLBIMP.exe)
    , ,
  • Post/PreBuild , ... ,
    Run when build updates the project output BuildEvents PostBuild, Build .
  • Soultion MSBUILD, .
  • / , , "dist.bat", , .

Visual Studio Macro, MSBUILD :

Public Module Builder

    Sub BuildSolutionDebug()
        SaveAll()
        Run("", "C:\WINDOWS\Microsoft.NET\Framework\v3.5\MSBuild.exe", """" & GetSolutionName() & """ /t:ReBuild /p:Configuration=Debug /p:Platform=""Mixed Platforms""")
    End Sub

    Sub Run(ByVal folder As String, ByVal file As String, ByVal arguments As String)
        Dim process As New System.Diagnostics.Process()
        process.Start(System.IO.Path.Combine(folder, file), arguments)
        Try
            process.WaitForExit()
        Catch ex As Exception

        End Try

    End Sub

    Sub SaveAll()
        DTE.ExecuteCommand("File.SaveAll")
    End Sub

    Function GetSolutionName() As String
        Return DTE.Solution.FullName
    End Function

End Module

, , . .
, !

+2

All Articles