Самым простым способом поиска кодов ошибок Win32 является просмотр файлов заголовков непосредственно в Windows SDK.Большинство из них находятся в файле WinError.h в папке include, куда бы вы ни установили Windows SDK.Для ошибок, относящихся к RAS (результат будет между 600 и 900), они находятся в файле RasError.h.
В случае, если ваш результат равен 6, он указывает на ERROR_INVALID_HANDLE;что в RAS означает, что ему не нравится дескриптор соединения, который вы передали функции.В вашем примере кода это будет _handle.
Кстати, вы можете посмотреть на использование проекта DotRas на CodePlex, это оболочка .NET вокруг RAS API.Конкретный метод, который вас интересует, будет RasConnection.GetConnectionStatus, он возвращает данные из этой структуры.
foreach (RasConnection conn in RasConnection.GetActiveConnections())
{
RasConnectionStatus status = conn.GetConnectionStatus();
// Do something useful.
}
Файл WinError.h также доступен онлайн здесь: http://msdn.microsoft.com/en-us/library/ms819772.aspx
Надеюсь, это поможет!