В начале кода программы с помощью директив include, includelib, extern я указываю какие функции из каких DLL будет использовать мое приложение. Во включенные на этапе компиляции dll и входит библиотека Kernel32.dll. Т.е. получается после загрузки программы, Kernel32.dll уже будет спроецирована на адресное пространство моего приложения. В ходе работы программы необходимо вызвать функцию Код (Text): BOOL QueueUserWorkItem( PTHREAD_START_ROUTINE pfnCallback, PVOID pvContext, ULONG dwFlags); которая находится в той же Kernel32.dll. Возникает проблема - эта функция никак не описана в *.inc файлах в MASM32 v8.2. Т.е. я не могу в тексте программы объявить функцию QueueUserWorkItem и использовать ее. Я хотел вызвать функцию GetProcAddress, которая находится в той же Kernel32.dll, чтобы получить адрес функции QueueUserWorkItem уже после загрузки программы. Но оказывается функция GetProcAddress тоже никак не описана в *.inc файлах MASM-а. Получается какой-то замкнутый круг. Не могу объявить функцию QueueUserWorkItem в тексте программы, также не могу объявить GetProcAddress, чтобы через нее узнать адрес QueueUserWorkItem. Как быть? Необходимо вызвать каким-то образом QueueUserWorkItem (желательно, обявив ее в тексте проги). Как поступить?
нет описания в inc-е? разве это проблема. почитай основы: http://www.wasm.ru/article.php?article=1022004
Э-э, а не проще добавить в kernel32.inc строки GetProcAddress PROTO WORD,WORD QueueUserWorkItem PROTO WORD,WORD,WORD Ты, парниша, смотри на функцию: сколько параметров передается, размер каждого из них, и затем сочиняй эти строки.