Показать сообщение отдельно
  #7  
Старый 22.09.2010, 10:46
Человек_Борща Человек_Борща вне форума
Новичок
 
Регистрация: 17.09.2010
Адрес: Беларусь, г. Минск
Сообщения: 58
Версия Delphi: 7, 2010,XE
Репутация: 10
По умолчанию

хм ваш пример хорошо работает! Но в моей программе что-то не так:
Код:
function TAppThread.EnumThreadWndProc(hwnd: THandle; lParam: LPARAM): Boolean; stdcall;
var
  len: Integer;
  classname: array [0..$ff] of Char;
begin
  Result:=True;
  if IsWindowVisible(hwnd) then
  begin
    len:=GetClassName(hwnd, @classname, SizeOf(classname));
    if len>0 then
      SetWindowText(hwnd,PChar(AppInfo.AppUserCaption));
  end;
end;

{ TAppThread }

procedure TAppThread.Execute;
var
  i: integer;
  wd:HWND;
begin
    while AppInfo.AppStart do //пака стоит галочка "запуск при старте HLR"
    begin
      ZeroMemory(@SI, SizeOf(SI)); //нулируем данные о процессе

      with PI do
      begin
        SetProcessAffinityMask(hProcess, AppInfo.AppCPUAffinity); //приоритет процесса
        WaitForSingleObject(hProcess, INFINITE); //Ждём завершения программы бесконечно..
        CloseHandle(hProcess); //закрываем хендл процесса
        CloseHandle(hThread); //закрываем хендл потока
      end;

        CreateProcess(
        PChar(AppInfo.AppExe),
        PChar(AppInfo.AppParamStr), nil, nil,
        False, GetPriority(AppInfo.AppPriority), nil,
        PChar(ExtractFileDir(AppInfo.AppExe)), SI, PI);

        EnumThreadWindows(PI.dwThreadId, @EnumThreadWindows, 0);

Я пытаюсь поместить текст из AppInfo.AppUserCaption в заголовок программы, но почему-то ничего не происходит!

Хатя на простом примере , отдельно созданном все нормально. пытаюсь задействовать на калькуляторе. (На примере все ок работает с калькулятором)
Ответить с цитированием