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

Вниз

Передача в CreateThread функции с параметрами   Найти похожие ветки 

 
EternalWonderer   (2002-08-15 12:01) [0]

Задача: отключить из программы сетевой диск. Вызываем
WNetCancelConnection2(pChar(LocalName),0,True);
Проблема: работает, но при этом программа зависает на 5-8 секунд.
Решение: попытаться вынести операцию в отдельный поток.
CreateThread(Nil,0,@WNetCancelConnection2,Nil,0,c);
Вопрос: как в этом случае передать WNetCancelConnection2 параметры?


 
Ученик   (2002-08-15 12:19) [1]

HANDLE CreateThread(

LPSECURITY_ATTRIBUTES lpThreadAttributes, // pointer to thread security attributes
DWORD dwStackSize, // initial thread stack size, in bytes
LPTHREAD_START_ROUTINE lpStartAddress, // pointer to thread function
LPVOID lpParameter, // argument for new thread
DWORD dwCreationFlags, // creation flags
LPDWORD lpThreadId // pointer to returned thread identifier
);


 
paul_shmakov   (2002-08-15 12:25) [2]


function MyThreadFunc(Param: Pointer): DWord; stdcall;
begin
WNetCancelConnection2(PChar(Pointer), 0, True);
end;

...
CreateThread(nil, 0, MyThreadFunc, Pointer(LocalName), ...);


 
EternalWonderer   (2002-08-15 12:41) [3]

Спасибо!


 
EternalWonderer   (2002-08-15 13:10) [4]

Вот только передать pChar так и не удалось: передаётся пустая строка. Пришлось "извернуться":

Function ThreadedCancelConnection(LocalLetter: Pointer): DWord; stdcall;
Var s: String;
Begin
s := Char(LocalLetter) + ":";
WNetCancelConnection2(pChar(s),0,True);
End;
...
CreateThread(Nil,0,@ThreadedCancelConnection,Pointer(LocalName[1]),0,c);



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

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

Наверх





Память: 0.45 MB
Время: 0.011 c
1-98115
lovres
2002-09-20 10:02
2002.09.30
Вопрос по RadioGroup


1-98220
DrAlban
2002-09-18 20:49
2002.09.30
Что такое абстрактный класс ?


3-97984
Кракен
2002-09-08 16:13
2002.09.30
Добавить поле в конец бызы


14-98351
billybons
2002-09-03 10:20
2002.09.30
сетевой прикол


3-97959
maxim2
2002-09-09 09:54
2002.09.30
Как поставить фильтр





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский