Цитата(Jurdens @ Nov 9 2007, 11:26)

А задача такая запускать произвольную функцию по таймеру через время
Time. У запускаемой функции неизвестен тип параметра (так надо ) в общем случае и возвращаемый параметр
для этого мы должны передать ее адрес в функцию.
DelayStart(unsigned Time, *Func(?));
Тогда вопрос - там, откуда будет вызвана эта самая Func, необходимо ей что-то передать. И откуда это что-то возьмется? И куда ляжет результат выполнения Func?
Т.е. мы приходим к чему-то типа:
Код
typedef void*(*unifunc)(void *)
void DelayStart(unsigned Time, unifunc func, void *arg, void **res);
...
void *f1(void * arg)
{
TMyStruct *a = (TMyStruct *)arg;
TMyStruct *res;
....
return res;
}
void main()
{
TMyStruct a, *b;
DelayStart(100, f1, &a, &b);
...
}