public void GetLocation(out string fileName, out int lineNumber, out TEXT_POSITION start, out TEXT_POSITION end) {
var docPosition = (IDebugDocumentPosition2)(Marshal.GetObjectForIUnknown(_requestInfo.bpLocation.unionmember2));
Marshal.ThrowExceptionForHR(docPosition.GetFileName(out fileName));
var pStart = new TEXT_POSITION[1];
var pEnd = new TEXT_POSITION[1];
Marshal.ThrowExceptionForHR(docPosition.GetRange(pStart, pEnd));
start = pStart[0];
end = pEnd[0];
lineNumber = (int)start.dwLine + 1;
}