In my end article, "Visual C# Express - File Types (5th In A Series)", I discussed the types of files Visual C# generates when you make a oversimplified Windows labor. However, I controlled the seminar to those files generated antecedent to the firstborn effective put up of the project.

This nonfiction extends my past article, by examining the files created C# Express after you do a C# Express Build.


Post ads:
Kate Spade New York "A Blue Streak" Idiom Bangle Bracelet / White Freshwater Cultured Pearl Necklace, Bracelet and / Watch Box Large 20 Mens Brown Leather Display Glass Top

Microsoft created an wholly new build utility-grade for Visual Studio 2005 titled MSBuild. In nonspecific when you raise an complete solution, C# Express invokes MSBuild next to the mixture record as sign. MSBuild next uses the answer record to observe the special project files which comprise XML figure book of instructions.

It is particularly out of the ordinary to note, however, that the SimpleWindow3 jut out over file generated by the C# Express IDE is not standalone; rather, it includes a insinuation to another XML extend beyond file, Microsoft.CSharp.targets, as usual positioned below the C:/WINDOWS/Microsoft.NETFramework/ key.

But that's not all. Microsoft.CSharp.targets includes yet another suggestion to yet other XML task file,Microsoft.Common.targets, likewise naturally placed beneath the C:/WINDOWS/Microsoft.NETFramework encyclopaedia.

Post ads:
Pave Diamond Wedding Ring in Platinum Band (G, SI1, 0.33 / HinsonGayle Glamour Collection Handpicked Ultra-Luster / His & Her 3 Piece Wedding Ring Set White Gold Ep Sterling

In pallid of the preceding gossip we can conclude that best of how C# Express builds hang over/solutions depends on MSBuild; and near null that MSBuild does is unyielding coded. Rather, MSBuild follows a put up string that is largely stubborn by your (relatively) weeny project file, the larger Microsoft.CSharp.targets, and the gigantic Microsoft.Common.targets database. The end event I checked, Microsoft.Common.targets was much than several a thousand lines of XML. Now, let us study the files created by MSBuild in a characteristic Windows submission.

Files Created in the SimpleWindow/SimpleWindow/obj/Release Directory

MSBuild creates the later files in the SimpleWindow/SimpleWindow/obj/Release directory:

SimpleWindow.csproj.GenerateResource.Cache is an eccentric least database created by the GenerateResource Task of MSBuild. The Microsoft documentation says for MSBuild calls it a "StateFile" and says it "Specifies the alley to an unrestricted storage space database utilized to speediness up state checking of links in .resx input signal files".

SimpleWindow.Properties.Resources.resources likewise is the positional notation compiled newspaper of the Resources.resx which we studied in my ending nonfictional prose. Ultimately MSBuild golf links this in near the compiled versions of the C# files in this product to construct a azygous house of representatives file; so for purposes of this overhang it is an gray record.

SimpleWindow.exe is the meeting created by MSBuild victimisation the C# compliler (usingt the CSC obligation). It contains the list of SimpleWindow.Properties.Resources.resources and the compiled table of contents of Form1.cs, Form1.Designer.cs, Program.cs, AssemblyInfo.cs, Resources.Designer.cs, and Settings.Designer.cs. This is the viable report create by this task.

SimpleWindow.pdb supports debugging. According to Microsoft, PDB files "hold debugging and task form substance that allows progressive linking of a correct structure of your program". PDB files are created when you modify debugging in the C# stash away proecess.

Files Copied to the bin/Debug and bin/Release Directories

Finally, when MSBuild is ended creating the SimpleWindow.exe upper house and side by side files, it copies to
SimpleWindow.exe and SimpleWindow.pdb to the SimpleWindow/SimpleWindow/bin/Release calendar.

Further Exploration

If you poorness to see more stimulating behavior, hit the F5 key to run the right interpretation of your programme afterwards cease the programme and question the the SimpleWindow/SimpleWindow/bin/Debug calendar. Magic - SimpleWindow.exe and SimpleWindow.pdb have been unoriginal into the SimpleWindow/SimpleWindow/bin/Debug calendar. What controls this? How does Visual C# Express cognize to use this reference book and wherever to discovery the files to rearrange into this directory? These are absorbing questions for incoming articles.


C# Express builds a manual and a set of point files when you archetypical bring into being a Windows standing project, but when you in reality erect the project the MSBuild utility takes over and done with and creates compiled resource files, computer programme assemblage frequent files, and ultimately an viable assembly profile (SimpleWindow.exe).


NOTE: I utilised forward slaves for sub-directory separators in this article because the publication average does not maintain blackslashes.

創作者 k4appck 的頭像


k4appck 發表在 痞客邦 留言(0) 人氣()