<?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=222531&amp;view=findpost&amp;p=2959092</guid>
        <pubDate>Thu, 11 Aug 2011 09:03:24 +0000</pubDate>
        <title>Проверить является ли приложение образом программы для Windows NT.</title>
        <link>https://forum.sources.ru/index.php?showtopic=222531&amp;view=findpost&amp;p=2959092</link>
        <description><![CDATA[User_with_NoName: Выдержка:<br>
...<br>
LOAD_LIBRARY_AS_DATAFILE	Если это значение используется, система преобразует и проецирует данные файла в виртуальное адресное пространство вызывающего процесса, так, как если бы он был файлом данных. Ничего не делается, чтобы исполнить код или подготовиться к исполнению отображаемого файла. <strong class='tag-b'>Поэтому, Вы не можете вызывать функции подобно GetModuleHandle или GetProcAddress для этой DLL.</strong> Используйте этот флажок тогда, когда  хотите загрузить DLL только для того, чтобы извлечь сообщения или ресурсы из нее.<br>
...<br>
Чтобы разрешать или запретить сообщения об ошибке, отображаемые на экране загрузчиком в ходе загрузки DLL, используйте функцию SetErrorMode.<br>
.<br>
взято с <a class='tag-url' href='http://vsokovikov.narod.ru/New_MSDN_API/DLL/fn_loadlibraryex.htm' target='_blank'>Функция LoadLibraryEx</a><br>
<br>
Обработка ошибок с помощью функции SetErrorMode <br>
Некоторые ошибки, такие как, например, &quot;Устройство не готово&quot; (при записи информации на дискету, которая защищена от записи), вызывают окна сообщений Windows, для информирования пользователя о случившейся ошибке. Приложение может обрабатывать такие ошибки, с помощью использования функции SetErrorMode: <br>
SetErrorMode (uMode); <br>
В данную функцию можно передавать любое из перечисленных в табл. 1.11 значение параметра uMode.<br>
<br>
SEM_FAILCRITICALERRORS	<br>
При установке данного значения операционная система не отображает окно сообщения об ошибке. Вместо этого, операционная система отправляет данную ошибку вызвавшему ее процессу<br>
взято с <a class='tag-url' href='http://wm-help.net/books-online/book/56472/56472-97.html#anc11' target='_blank'>Глава 5. Win32 API</a> <br>
<br>
<span class="tag-color tag-color-named" data-value="gray" style="color: gray"><span class='tag-size' data-value='7' style='font-size:7pt;'>Добавлено <time class="tag-mergetime" datetime="2011-08-11T13:06:42+04:00">11.08.11, 09:06</time></span></span><br>
SetErrorMode<br>
Описание<br>
<br>
function SetErrorMode(Mode: Word): Bool; <br>
<br>
Опpеделяет, будет ли Windows отобpажать блок ошибок пpи ошибках DOS по пpеpыванию INT 24H. Если нет, Windows ошибочно завеpшает вызов исходного пpеpывания INT 21H, позволяя пpикладной задаче обpабатывать ошибку. <br>
Паpаметpы<br>
Mode: (0) Windows отобpажает блок ошибок; (1) Windows пеpедает обpаботку ошибки пpикладной задаче. <br>
Возвpащаемое значение<br>
<br>
Не нуль, если установлено; 0 - если нет.]]></description>
        <author>User_with_NoName</author>
        <category>Delphi: Система, Windows API</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=222531&amp;view=findpost&amp;p=1874639</guid>
        <pubDate>Wed, 20 Feb 2008 09:28:20 +0000</pubDate>
        <title>Проверить является ли приложение образом программы для Windows NT.</title>
        <link>https://forum.sources.ru/index.php?showtopic=222531&amp;view=findpost&amp;p=1874639</link>
        <description><![CDATA[MetalFan: а можно попробовать SHGetFileInfo c SHGFI_EXETYPE]]></description>
        <author>MetalFan</author>
        <category>Delphi: Система, Windows API</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=222531&amp;view=findpost&amp;p=1861795</guid>
        <pubDate>Fri, 08 Feb 2008 08:12:58 +0000</pubDate>
        <title>Проверить является ли приложение образом программы для Windows NT.</title>
        <link>https://forum.sources.ru/index.php?showtopic=222531&amp;view=findpost&amp;p=1861795</link>
        <description><![CDATA[lepit: 2Lexus: try/except здесь бесполезен, т.к. LoadLibrary - функция Windows, а не Delphi, там свои SEH&#39;и расставлены<br><br>2NikFel: нужно использовать LoadLibraryEx с флагом &quot;LOAD_LIBRARY_AS_DATAFILE&quot; и дальше смотреть какой результат вернулся]]></description>
        <author>lepit</author>
        <category>Delphi: Система, Windows API</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=222531&amp;view=findpost&amp;p=1861784</guid>
        <pubDate>Fri, 08 Feb 2008 08:05:12 +0000</pubDate>
        <title>Проверить является ли приложение образом программы для Windows NT.</title>
        <link>https://forum.sources.ru/index.php?showtopic=222531&amp;view=findpost&amp;p=1861784</link>
        <description><![CDATA[LexusAl: А если заключить вызов функции LadLibrary в блок <br>try<br>  LoadLirary(...)<br>except<br>  //а здесь обрабтчик исключения, если таковое появится<br>end;]]></description>
        <author>LexusAl</author>
        <category>Delphi: Система, Windows API</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=222531&amp;view=findpost&amp;p=1861676</guid>
        <pubDate>Fri, 08 Feb 2008 05:49:40 +0000</pubDate>
        <title>Проверить является ли приложение образом программы для Windows NT.</title>
        <link>https://forum.sources.ru/index.php?showtopic=222531&amp;view=findpost&amp;p=1861676</link>
        <description><![CDATA[NikFel: Подскажите пожалуйста. Как избежать вот этого сообщения:<br>При загрузке LoadLibrary иногда выскакивает сообщение, как-нибудь можно проверить файл, чтобы не вызывать эту функцию.<br>&lt;&lt;Приложение или библиотека C:&#092;файл.exe не является образом программы для Windows NT. Проверьте назначение установочного диска.&gt;&gt; <br>Заранее спасибо.]]></description>
        <author>NikFel</author>
        <category>Delphi: Система, Windows API</category>
      </item>
	
      </channel>
      </rss>
	