Доброго времени суток! Столкнулся с явлением таким что после использования метода InnerText (это который в IHTMLElement) многократно, размер файла постоянно растет, что навело на мысль о том что этот метод не чистит за собой, ни к чему хорошему это конечно в будущем не приведет, да и некрасиво как то ехе весит копейки а память жрется в арифметической прогрессии. Есть способ этому воспрепятствовать?
Имеется ввиду IHTMLElement::get_innerText() ? Все строки должно быть освобождены после использования с помощью SysFreeString(). > этот метод не чистит за собой Как он может "чистить за собой", если не знает, когда ты закончишь использовать строку ? Код (Text): BSTR bstrInnerText; if (SUCCEEDED(pElement->get_innerText(&bstrInnerText))) { // ... use ... SysFreeString(bstrInnerText); } > размер файла постоянно растет размер какого файла?
JamesB Спасибо похоже то что надо, я конечно извиняюсь что не совсем доходчиво излагаю мысли, просто иногда знаний не хватает чтоб более детально описать проблему, на интуитивном уровне понимаю что должно где то быть такое но в том же MSDN где я читаю в ремарках нигде даже намека нету на то что, вы попользовались будьте добры потом вызвать SysFreeString(bstrInnerText); И еще вопрос к тебе JamesB я вижу ты сведущ в этом деле, подскажи случайно нет возможности брать не весь текст методом InnerText а только вновь введенные строки? Пример было в элементе: stroka1 stroka2 через пару секунд добавились еще несколько строк, стало: stroka1 stroka2 stroka3 stroka4 Есть ли возможность брать только stroka3,stroka4 с помощью каких то методов? IHTMLTableRow::rowindex IHTMLTAbleCell::cellindex это случайно не те функции которые в этом могут помочь? Спасибо.
эээ... innerText - это текст между открывающим тэгом и закрывающим... http://msdn2.microsoft.com/en-us/library/aa752299(VS.85).aspx про это написано внизу с пометкой, что для ХТМЛ-таблиц Не особо понял что ты хочешь сделать как бы... У обычного элемента innerText можно получить весь... и всё...
Есть класс internet_explorer_server в нем идет чат, я хочу брать только те строки которые недавно были введены в этот чат а не весь чат целиком. Есть такая возможность?(типа как с richedit em_getlinecount после чего можно узнать что добавилось скажем 5 новых строк и взять по индексам только последние 5 строк) SysFreeString возвращает число 30h, я так понимаю это код ошибки System Errors - Numerical Order (младшая часть CODE а не Facility) но числу 30h соответсвует десятичное 48 а такого номера ошибки нет или в MSDN System Errors - Numerical Order даны сразу в hex? Стоит на это обращать внимание или важно то что функция выполнилась успешно?