Пример показывает, как при инициализации формы происходит поиск нашего окна, а затем вычисление местоположения нужной нам кнопки в заголовке окна.
procedure TForm1.FormCreate(Sender: TObject);
var
hwndHandle: THANDLE;
hMenuHandle: HMENU;
iPos: Integer;
begin
hwndHandle := FindWindow(nil, PChar(Caption));
if (hwndHandle <> 0) then
begin
hMenuHandle := GetSystemMenu(hwndHandle, FALSE);
if (hMenuHandle <> 0) then
begin
DeleteMenu(hMenuHandle, SC_CLOSE, MF_BYCOMMAND);
iPos := GetMenuItemCount(hMenuHandle);
Dec(iPos);
{ Надо быть уверенным, что нет ошибки т.к. -1 указывает на ошибку }
if iPos > -1 then
DeleteMenu(hMenuHandle, iPos, MF_BYPOSITION);
end;
end;
end;
Тестирование параллельного программного обеспечения представляет собой более
сложную задачу по сравнению с тестированием последовательной программы. Программист
должен знать о подводных камнях при тестировании параллельного кода, имеющихся
методологиях и инструментарии.
Аннотация. В статье кратко рассматривается архитектура AMD64 компании AMD и ее
реализация EM64T компании Intel. Описаны особенности архитектуры, ее возможности,
достоинства и недостатки.