Вопрос № 34415: Здравствуйте, господа эксперты!
У меня такая задача. Нужно во время исполнения получить по имени (строке) указатель на функцию. Это имя функции на этапе компиляции не известно, оно получается в процессе разбора полей структуры. Есть только набор ...Вопрос № 34425: Пишу программку в BCB6.
возник вопрос - как можно программно узнать параметры мыши, а именно скорость движения указателя?
мне надо чтоб некий объект двигался по форме (по прямой) со скорость мыши (если б мышь его перемещала).
двигать пред...Вопрос № 34465: Как в C/C++ (cgi) прочитать данные посланные POST
например из такой формы
<form action="?act=send" method="POST">
<input type="text" name="login">
<input type="text&qu...
Вопрос № 34.415
Здравствуйте, господа эксперты!
У меня такая задача. Нужно во время исполнения получить по имени (строке) указатель на функцию. Это имя функции на этапе компиляции не известно, оно получается в процессе разбора полей структуры. Есть только набор кодов функций с одинаковым списком входящих параметров и возвращаемым значением. Этот набор функций надо откомпилировать и каким-то образом получать к ним доступ по имени во время исполнения. Есть ли такая возможность в компиляторе или линковщике? Или это всё-таки возможно средствами языка? Я использую
Интловский компилятор, а линкуюсь под Windows и Linux.
Отправлен: 30.01.2006, 14:12
Вопрос задал: Skolod (статус: Посетитель)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Straight
Здравствуйте, Skolod!
Попробуйте откомпилить в dll, а потом подключать в процессе исполнения.
HMODULE dll = LoadLibrary("mylib.dll");
void * proc = GetProcAddress(dll,"funcname");
Ответ отправил: Straight (статус: 6-ой класс)
Отправлен: 30.01.2006, 14:28
Вопрос № 34.425
Пишу программку в BCB6.
возник вопрос - как можно программно узнать параметры мыши, а именно скорость движения указателя?
мне надо чтоб некий объект двигался по форме (по прямой) со скорость мыши (если б мышь его перемещала).
двигать предмет с некой скоростью не проблема, а вот как узнать скорость?
Зарание спасибо.
Отправлен: 30.01.2006, 17:45
Вопрос задал: PROD (статус: 3-ий класс)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Tigran K. Kalaidjian
Здравствуйте, PROD!
Поставьте таймер и следите за перемещениями мыши, т.е. за сообщением WM_MOUSEMOVE:
WM_MOUSEMOVE
fwKeys = wParam; // key flags
xPos = LOWORD(lParam); // horizontal position of cursor
yPos = HIWORD(lParam); // vertical position of cursor
Parameters
fwKeys
Value of wParam. Indicates whether various virtual keys are down. This parameter can be any combination of the following values:
Value Description
MK_CONTROL Set if the CTRL key is down.
MK_LBUTTON Set if the left mouse button is down.
MK_MBUTTON Set if the middle mouse button is down.
MK_RBUTTON Set if the right mouse button is down.
MK_SHIFT Set if the SHIFT key is down.
xPos
Value of the low-order word of lParam. Specifies the x-coordinate of the cursor. The coordinate is relative to the upper-left corner of the client area.
yPos
Value of the high-order word of lParam. Specifies the y-coordinate of the cursor. The coordinate is relative to the upper-left corner of the client area.
--------- aqua nostra ignis est
Ответ отправил: Tigran K. Kalaidjian (статус: Профессионал)
Отправлен: 30.01.2006, 18:24
Вопрос № 34.465
Как в C/C++ (cgi) прочитать данные посланные POST
например из такой формы
<form action="?act=send" method="POST">
<input type="text" name="login">
<input type="text" name="passwd">
<input type="submit" value="вход">
</form>
Отправлен: 31.01.2006, 08:40
Вопрос задал: MaxMMA (статус: Посетитель)
Всего ответов: 3 Мини-форум вопроса >>> (сообщений: 1)
Отвечает: Guka
Здравствуйте, MaxMMA!
Тебе нужно использовать функцию getenv, вот её описание:
char *getenv( const char *varname );
Входным параметром для неё являются переменные окружения. Возвращает значение этой переменной.
Для запроса POST нужно использовать CONTENT_LENGTH.
Последовательность действий примерно такая (в приложении):
Приложение:
Ответ отправил: Guka (статус: 1-ый класс)
Отправлен: 31.01.2006, 09:38
Отвечает: Straight
Здравствуйте, MaxMMA!
Хочу заметить, что в CONTENT_LENGTH данных формы отродясь не бывало. Там хранится длина данных. А сами данные при посте передаются на стандартный вход.
Ответ отправил: Straight (статус: 6-ой класс)
Отправлен: 31.01.2006, 10:12 Оценка за ответ: 5
Отвечает: Лучников Юрий Владимирович
Здравствуйте, MaxMMA!
В форме заполняются значения ее полей , которые должны быть переданы в программу CGI. В вашей странице параметр ACTION команды FORM принимает одно из 2 значений: GET или POST.
Метод GET предполагает передачу данных программе CGI с использованием переменной среды с названием QUERY_STRING. Данные находятся в следующем формате:
Имя1=Значение1&Имя2=Значение2&...ИмяN=ЗначениеN
Здесь в качестве имен используются значения параметров NAME, задающие имена полей формы.
Метод POST предполагает передачу данных программе CGI через стандартный поток ввода STDIN.
-- Hint: Существует очень удобная C-библиотека для написания c-cgi приложений: cgic - ANSI C библиотека для создания CGI-Web приложений. >br>Возможности: >br> Обработка данных формы с разбором и коррекцией. Понимает GET и POST. Поддерживает строки, целые числа, и числа с плавающей запятой. Обеспечивает контроль границ для числовых параметров.