A Return to BizTalk EDI Base Service

A while ago, I described a problem where BizTalk’s EDI Base Service wouldn’t restart on a system reboot, even though it was set to start automatically.  It turns out that the problem is apparently caused by the timing of the starting of other services.  The EDI Base Service requires that the main BizTalk service is running.  If it’s not, then the start for the EDI service fails.  If after your system has settled down from the reboot, you try to start the EDI service manually, all works well.

The solution is to add a value to the registry to force the EDI Base Service to depend on the BizTalk service.  This is done by adding a value to HKLM/System/CurrentControlSet/Services/EDI Subsystem.  The value name is DependOnService.  The type for this particular value is REG_MULTI_SZ.  The value for this value (yes, I know how that sounds) is the name of your BTSSvc entry.  For me, it’s BTSSvc{DC267C4B-9C82-4B6F-B5CA-F4571593C6DE}.  Yours may or may not (I’m guessing not) be the same, but it is a key underneath HKLM/System/CurrentControlSet/Services that starts with BTSSvc followed by a GUID.

 Once you’ve made this change, the next time you restart, you shouldn’t see that error. At least, that has been my experience to date.