|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
07.11.2010, 13:25 | #1 |
Регистрация: 07.11.2010
Сообщений: 4
|
неперемещаемая форма из dll
Помогите. Нигде не могу найти, как получить неперемещаемую форму из библиотеки. Ну надо и все. Именно из dll. Надо именно с таскбаром, поскольку в нем нужно писать, ну и кнопку закрытия надо с подтвержением. Задача в общем тривиальная для ПРИЛОЖЕНИЯ с главной формой. И есть куча примеров для приложения .exe типа
const int WM_NCLBUTTONDOWN = 0x00A1; const int WM_NCHITTEST = 0x0084; const int HTCAPTION = 2; [DllImport("User32.dll")] static extern int SendMessage(IntPtr hWnd, int Msg, IntPtr wParam, IntPtr lParam); protected override void WndProc(ref Message m) { if (m.Msg == WM_NCLBUTTONDOWN) { //Проверяем где именно нажали кнопку мыши int result = SendMessage(m.HWnd, WM_NCHITTEST, IntPtr.Zero, m.LParam); if (result == HTCAPTION) //Не позволяем этому сообщению быть обработанным return; } base.WndProc(ref m); } в классе формы. При Application.Run(new Form1()) все на ура. Но для формы из библиотеки это не работает. Похоже, что эта процедура вообще ни где не переопределяется и не обрабатывается. Чую нужно где то в другом месте обьявить WndProc либо как то подругому? Но где и как, голову уже сломал, ничего не получается. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Пытаюсь понять код user32.dll и gdi32.dll | Beermonza | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 43 | 13.07.2010 15:09 |
Windows I/o без Kernel32.dll и Advapi32.dll | coinkrsk | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 31 | 27.06.2010 08:52 |
[DLL] Загрузка и выгрузка dll в/из чужого процесса | Человек_Борща | Win Api | 4 | 28.02.2010 17:47 |
Ошибка при выхове функций Bass.dll из другой DLL | SalasAndriy | Общие вопросы Delphi | 7 | 21.10.2009 23:36 |
из .exe TBitMap передать в DLL(форма) | lexaltd | Мультимедиа в Delphi | 13 | 14.07.2009 17:47 |