-
не будет никакой ошибки
-
Тебе намекают, что переменная p тут вообще не нужна. Вот этого достаточно с тем же успехом: caption:=Trim(_MibIfTable.table[i].bDescr);
-
>[14] ob_kun (2008-07-07 16:48:00) >а как бы сделали Вы? во-первых, приведение типов лишнее. во-вторых, работа с динамической памятью (если судить по алгоритму) лишняя. в третьих, поскольку это таймер, то не надо каждый раз перезаполнять список, полагаю, достаточно будет проверить на изменения. дальше — смотреть на задачу конуретней.
--- Do what thou wilt shall be the whole of the Law.
-
>[14] ob_kun (2008-07-07 16:48:00)ну и, кстати, код вообще фиготень. глянуть вот сюда: http://msdn.microsoft.com/en-us/library/aa365943(VS.85).aspx и понять, что если ЭТО работает, то оно не виновато, оно нечаянно. --- Understanding is not required. Only obedience.
-
Как я люблю ShowMessage('Произошла ошибка!'); в таймере !!!
-
>[24] int64 (2008-07-07 18:08:00) кстати, да. этот чудесный момент я вообще провтыкал. за это автору отдельный респектище, юзеры будут очень довольны. %-)
--- Understanding is not required. Only obedience.
-
2 Сергей М : то есть автор просто замудрил с записью, и можно писать проще?
Int64, ketmar: как я понял, делаем в этом случае ShowMessage и Timer1.Enabled := False;
:-)
-
2 ketmar: и еще, Вы предлагаете делать, как я понял, изменение трафика (числа ошибок/скорости etc.) для элемента, название которого в списке соотвествует возвращенному функцией, на первый отсчет таймера - просто производить добавление всех элементов, на последующие - только изменять в соответственных строках значения параметров (поскольку маловероятно внезапное подключение сетевой карты ;) ). Верно я понял?
-
>[26] ob_kun (2008-07-08 10:46:00) >делаем в этом случае ShowMessage и Timer1.Enabled := False; или так. (ц) но вообще-то, рисовать диалоговые окна из обработчика таймера — моветон.
>[27] ob_kun (2008-07-08 10:57:00) и это тоже. так эстетичней. плюс — внимательно почитать ссылку на msdn, которую я привёл, потом код из вопроса, и понять, что код неверный. переписать в соответствии с msdn. потом ещё подумать и вообще прекратить выдылеять/освобождать память в обработчике таймера (кроме самого первого раза, когда поле проинициализируется).
хинт: локальную переменную делаем полем формы. поскольку вызов пинается по таймеру — явно не стоит дополнительно память насиловать, ей и так от строк печально.
--- Do what thou wilt shall be the whole of the Law.
-
> ob_kun (08.07.08 10:46) [26]
Это же очевидно)
-
>[29] Сергей М. © (2008-07-08 11:30:00) ага, как штаны получил — загордился, перестал разгромные ответы писать! %-)
--- All Your Base Are Belong to Us
-
> ketmar © (08.07.08 11:35) [30]
Подожди, еще не вечер) Вожжа под хвост - неприятность малопредсказуемая)
-
>[31] Сергей М. © (2008-07-08 11:45:00) >Вожжа под хвост — неприятность малопредсказуемая) я даже боюсь представить, чем ещё штаны оборудованы…
--- All Your Base Are Belong to Us
-
2 ketmar : Извините, не могли бы вы помочь перевести (или хотя бы пояснить смысл) сишной строки pIfTable = (MIB_IFTABLE *) MALLOC(sizeof (MIB_IFTABLE)); Также: как я понимаю, заголовочника для Delphi нет, необходимо экспортировать функцию из динамической библиотеки, а описания структур оставить в программе, которые и были?
-
> pIfTable = (MIB_IFTABLE *) MALLOC(sizeof (MIB_IFTABLE));
New(pIfTable);
-
> Palladin
я и не ожидал, что так коротко) А разве в C++ нет ничего типа New?
-
MALLOC как видишь
-
>[33] ob_kun (2008-07-08 15:29:00) >как я понимаю, заголовочника для Delphi нет не факт. у джедаев этих заголовков…
--- Do what thou wilt shall be the whole of the Law.
-
>[35] ob_kun (2008-07-08 15:36:00) >А разве в C++ нет ничего типа New? есть. так и называется — new. только оно совсем для другого. остальное — GetMem(sizeof(…)).
--- Understanding is not required. Only obedience.
-
ob_kun Дополнение к ketmar Джедаи это delphi-jedi.org
|