Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2007.12.02;
Скачать: [xml.tar.bz2];

Вниз

POverlapped   Найти похожие ветки 

 
F@T@L_Err0r   (2007-11-07 15:39) [0]

Здравсвуйте.У меня такой вопрос:Пытаюсь записать информацию в сом порт, но при

   pi:POverlapped;
begin
pi.hEvent := CreateEvent(nil, True, False, nil);
....

вылазит ошибка access voltation???


 
Сергей М. ©   (2007-11-07 15:42) [1]

Память под pi выделять за тебя кто будет, Пушкин ?


 
Сергей М. ©   (2007-11-07 15:42) [2]

точнее не под pi, а под pi^


 
F@T@L_Err0r   (2007-11-07 15:44) [3]

а как???пример если можно.


 
Palladin ©   (2007-11-07 15:45) [4]

new(pi)


 
Palladin ©   (2007-11-07 15:46) [5]

ты б почитал уже чего нибудь чтоли...


 
F@T@L_Err0r   (2007-11-07 15:49) [6]

спасиба.а еще такой вопрос в прцедуре

var Buf:array[0..5] of byte;
   s:cardinal;
begin
ReadFile(hPort,Buf,SizeOf(Buf),s,nil);
......
программа останавливается и бесконечно долго думает...точнее подвисает.
settimouts все равно 0.


 
Сергей М. ©   (2007-11-07 15:53) [7]

Чукча точно не читатель)

Какого же лешего ты передаешь последним параметром nil, если в вопросе ты озаботился именно overlapped-режимом ?


 
F@T@L_Err0r   (2007-11-07 15:55) [8]

ну ето старый код...не успел обновить...но проблема ведь не в етом?


 
Сергей М. ©   (2007-11-07 15:57) [9]


> проблема ведь не в етом?
>


А в чем же, по-твоему ? В магнитных бурях на Луне ?)


 
F@T@L_Err0r   (2007-11-07 16:00) [10]

ну поставил я pi вместо nil.теперь вообще перестали считывать данные из порта.


 
Reindeer Moss Eater ©   (2007-11-07 16:01) [11]

так У тебя снова старый код и ты снова его не успел поправить


 
Palladin ©   (2007-11-07 16:01) [12]

ну значит не читает он оттуда ничего


 
F@T@L_Err0r   (2007-11-07 16:03) [13]

Вот код:

var Buf:array[0..5] of byte;
   pi:POverlapped;
   s:cardinal;
begin
new(pi);
pi.hEvent := CreateEvent(nil, True, False, nil);
ReadFile(hPort,Buf,SizeOf(Buf),s,pi);
........


 
Reindeer Moss Eater ©   (2007-11-07 16:03) [14]

И где анализ результата ReadFile и где проверка GetLastError если у тебя оверлаппед чтение?


 
Сергей М. ©   (2007-11-07 16:03) [15]


> теперь вообще перестали считывать данные из порта


Ты справку проштудировал по overlapped-режиму ввода-вывода ?


 
Anatoly Podgoretsky ©   (2007-11-07 16:10) [16]

> F@T@L_Err0r  (07.11.2007 15:55:08)  [8]

А зачем нам обсуждать посторонний код?


 
F@T@L_Err0r   (2007-11-07 16:10) [17]

прверка overlapped:

if pi.hEvent = Null then showmessage("Null") else showmessage(good);
проверка ReadFile:

if ReadFile(hPort,Buf,SizeOf(Buf),s,pi) then showmessage("Good") else showmessage("Null");

и справку я смотрел все сделал как там написано...


 
Anatoly Podgoretsky ©   (2007-11-07 16:10) [18]

> F@T@L_Err0r  (07.11.2007 16:03:13)  [13]

Поставь точку останова на многоточии.


 
Anatoly Podgoretsky ©   (2007-11-07 16:11) [19]

> F@T@L_Err0r  (07.11.2007 15:49:06)  [6]

Она не повисает, а ждет SizeOf(Buf) байт


 
Reindeer Moss Eater ©   (2007-11-07 16:12) [20]

и справку я смотрел все сделал как там написано...
if ReadFile(hPort,Buf,SizeOf(Buf),s,pi) then showmessage("Good")

В случае с оверлаппед все как раз наеборот.
Успешный вызов REadFile обязан вернуть False.


 
Сергей М. ©   (2007-11-07 16:15) [21]


> справку я смотрел все сделал как там написано


Нифига ты ее не читал.
Или читал, но сделал наоборот.


 
F@T@L_Err0r   (2007-11-07 16:23) [22]

блин ну ладна буду искать сам где ошибка...


 
Сергей М. ©   (2007-11-07 16:29) [23]

Нефига ее искать.
В справке даже пример работы в этом режиме имеется.


 
Германн ©   (2007-11-07 19:18) [24]


> POverlapped [D7, XP]
>
> F@T@L_Err0r   (07.11.07 15:39)

http://delphimaster.net/view/2-1193902088/


> F@T@L_Err0r   (07.11.07 16:23) [22]
>
> блин ну ладна буду искать сам где ошибка...
>

Да чего её искать, эту ошибку. И так ясно в чём она :-)



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2007.12.02;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.53 MB
Время: 0.042 c
2-1194476091
TankMan
2007-11-08 01:54
2007.12.02
Подскажите пожалуйста почему выдается ошибка в TidFTP?


6-1175429195
wolchonok29
2007-04-01 16:06
2007.12.02
Загрузка из потока


2-1194634076
_Levin
2007-11-09 21:47
2007.12.02
Организовать цикл.


2-1194193488
WFS
2007-11-04 19:24
2007.12.02
Как создать компонент Edit динамически?


9-1154378158
Nobody_1988
2006-08-01 00:35
2007.12.02
3D Engine





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский