<?xml version='1.0' encoding="utf-8"?>
      <rss version='2.0'>
      <channel>
      <title>Форум на Исходниках.RU</title>
      <link>https://forum.sources.ru</link>
      <description>Форум на Исходниках.RU</description>
      <generator>Форум на Исходниках.RU</generator>
  	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=424316&amp;view=findpost&amp;p=3855763</guid>
        <pubDate>Tue, 07 Dec 2021 07:29:01 +0000</pubDate>
        <title>DirectDraw в Lazarus</title>
        <link>https://forum.sources.ru/index.php?showtopic=424316&amp;view=findpost&amp;p=3855763</link>
        <description><![CDATA[Fr0sT: &#036;ALIGN ?]]></description>
        <author>Fr0sT</author>
        <category>Delphi: Система, Windows API</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=424316&amp;view=findpost&amp;p=3855059</guid>
        <pubDate>Fri, 26 Nov 2021 06:44:37 +0000</pubDate>
        <title>DirectDraw в Lazarus</title>
        <link>https://forum.sources.ru/index.php?showtopic=424316&amp;view=findpost&amp;p=3855059</link>
        <description><![CDATA[Rouse_: Директивы такой нет, есть префикс <strong class='tag-b'>packed</strong> в декларации. Сверятся надо со структурами в MSDN]]></description>
        <author>Rouse_</author>
        <category>Delphi: Система, Windows API</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=424316&amp;view=findpost&amp;p=3855006</guid>
        <pubDate>Thu, 25 Nov 2021 07:47:25 +0000</pubDate>
        <title>DirectDraw в Lazarus</title>
        <link>https://forum.sources.ru/index.php?showtopic=424316&amp;view=findpost&amp;p=3855006</link>
        <description><![CDATA[Lem0nti: Возможно нашёл корень зла. В Дельфях все структуры для работы с ДД не упакованы, а в Лазарусе - упакованы. Но я убираю ключевое слово packed и это ничего не меняет в их размерах.<br>Подскажите, пожалуйста, директиву компилятора для включения-выключения упаковки рекордов? Яндексение успеха пока не принесло.]]></description>
        <author>Lem0nti</author>
        <category>Delphi: Система, Windows API</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=424316&amp;view=findpost&amp;p=3855004</guid>
        <pubDate>Thu, 25 Nov 2021 05:58:07 +0000</pubDate>
        <title>DirectDraw в Lazarus</title>
        <link>https://forum.sources.ru/index.php?showtopic=424316&amp;view=findpost&amp;p=3855004</link>
        <description><![CDATA[Lem0nti: Скачал, попробовал - результат такой же как и при использовании дельфовых файлов в Лазарусе.<br>Курение исходников показало следующее - автор обёртки DirectDraw в Дельфих и джедаях один и тот же. Исходники отличаются лишь комбинацией ифдефов. Единственный класс, который использует DirectDrawCreateEx в джедаевском репозитории, это TDisplay. Но сам этот класс никем во всей ветке master у джедаев не используется.<br>Если у вас есть пример, дайте, пожалуйста, ознакомиться.]]></description>
        <author>Lem0nti</author>
        <category>Delphi: Система, Windows API</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=424316&amp;view=findpost&amp;p=3854988</guid>
        <pubDate>Wed, 24 Nov 2021 18:48:39 +0000</pubDate>
        <title>DirectDraw в Lazarus</title>
        <link>https://forum.sources.ru/index.php?showtopic=424316&amp;view=findpost&amp;p=3854988</link>
        <description><![CDATA[Rouse_: Скачай JEDY там уже адаптированно под лазарь.]]></description>
        <author>Rouse_</author>
        <category>Delphi: Система, Windows API</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=424316&amp;view=findpost&amp;p=3854972</guid>
        <pubDate>Wed, 24 Nov 2021 15:46:30 +0000</pubDate>
        <title>DirectDraw в Lazarus</title>
        <link>https://forum.sources.ru/index.php?showtopic=424316&amp;view=findpost&amp;p=3854972</link>
        <description><![CDATA[Lem0nti: Здравствуйте.<br>
Ситуация такая - идёт процесс адаптирования исходников одного проекта к работе и в Дельфи и в Лазарусе...<br>
И вот я добрался до работы с DirectDraw: функция DirectDrawCreateEx при вызове сразу генерит ошибку. Код выглядит так:<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">DirectDrawCreateEx(nil,m_ddraw,{$IFDEF FPC}@{$ENDIF}IID_IDirectDraw7,nil);</div></ol></div></div></div></div><script>preloadCodeButtons('1');</script><br>
Посмотрев внимательно на объявление этой функции в файле p_ddraw в Лазарусе и сравнив его с Дельфовым DirectDraw, стало понятно следующее: эти функции объявлены по разному - в одном случае параметр iid это структура(D), в другом указатель(L). Переобъявил эту функцию таким образом как она объявлена в D и вроде всё стало норм, но выскочило в другом месте. После внимательного изучения этих двух файлов, оказалось что во многих объявлениях как экспортных функций, так и методов интерфейсов в D структуры, в L - указатели.<br>
Подскажите, пожалуйста, что нужно предпринять, чтобы можно было работать в Лазарусе с DirectDraw?<br>
<br>
Вариант с копированием файла DirectDraw и использованием его после лёгких правок в Лазарусе, уже опробовал - это привело к тому, что интерефйсы в Лазарусе просто не создаются там где создаются в Дельфях.]]></description>
        <author>Lem0nti</author>
        <category>Delphi: Система, Windows API</category>
      </item>
	
      </channel>
      </rss>
	