Some time ago I published a utility on which dumps the temporary C# source code files generated by BizTalk during compilation. The utility works quite well, but cannot always dump all the files because it is unable to prevent BizTalk from deleting files once compilation is complete. BizTalk sometimes gets there first, removing the temporary files before the utility has a chance to copy them to the target dump location. Another problem is that the files have meaningless names, and are therefore difficult to trace back to the corresponding BizTalk artefacts.

The utility is cool…but quite unnecessary. It turns out that Microsoft has implemented an undocumented registry setting to control the generation of C# files. Create a key called BizTalkProject at the following location:


Next, create a DWORD value called GenerateCSFiles. Set the value to 1 (or higher). Restart Visual Studio, load a BizTalk project and re-compile. Now take a look at your project folder. Some of you may be disappointed to know that GenerateVBFiles and GenerateJSFiles are not supported.