jcp>внимание вопрос. jcp>когда приложение, которое вызвало эту длл в фокусе, showmessage w1 показывает нужное значение 555555, jcp>но когда без фокуса начальное значение переменной 44. jcp>почему?
Потому, что у процесса, в контексте которого выполняется MsgProc переменная w1 не инициализирована (содержит мусор который компилятор записал в файл). Кратко: между процессами разделяется только код длл, но не данные.