The http ActiveX component has ConnectFailReason to indicate what reasons the connection failed. There is no corresponding error value for after the connection. I am used to programmatically being able to determine a timeout vs read or write failure or other socket failure. The only option I can find is to somehow parse the text or XML of LastErrorText or LastErrorXml, but that seems overly cumbersome.
I understand, and it's something that Chilkat hopes to eventually provide.
Unfortunately, it's a difficult thing to add quickly. An HTTP request and response, can be very complex and can fail for many reasons. There can be proxies, redirects can be followed, automatic handling of authorization can happen (which involves back-and-forth communications), etc.