<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[СОЦИОН. &mdash; Стыдно признаться, но у меня вопрос по программированию]]></title>
	<link rel="self" href="https://socionica.com/extern.php?action=feed&amp;tid=674&amp;type=atom" />
	<updated>2005-11-17T07:50:19Z</updated>
	<generator>PunBB</generator>
	<id>https://socionica.com/viewtopic.php?id=674</id>
		<entry>
			<title type="html"><![CDATA[Re: Стыдно признаться, но у меня вопрос по программированию]]></title>
			<link rel="alternate" href="https://socionica.com/viewtopic.php?pid=38622#p38622" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>kaprizka пишет:</cite><blockquote><p>Есть процессы, подозрительные из-за высокого приоритета:<br /><strong>csrss.exe</strong><br /><strong>winlogon.exe</strong><br />Что бы это csrss значило?</p></blockquote></div><p>это системные процессы и убивать их не стоит - винды навернутся</p>]]></content>
			<author>
				<name><![CDATA[bw]]></name>
			</author>
			<updated>2005-11-17T07:50:19Z</updated>
			<id>https://socionica.com/viewtopic.php?pid=38622#p38622</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Стыдно признаться, но у меня вопрос по программированию]]></title>
			<link rel="alternate" href="https://socionica.com/viewtopic.php?pid=38621#p38621" />
			<content type="html"><![CDATA[<p>вот пример из MSDN</p><p>суть его в том, что если тебе нужно перерисовать клиентскую часть окна, вызывай InvalidateRect</p><p>POINT aptPentagon[6] = {50,2, 98,35, 79,90, 21,90, 2,35, 50,2}, <br />&nbsp; &nbsp; &nbsp; aptHexagon[7]&nbsp; = {50,2, 93,25, 93,75, 50,98, 7,75, 7,25, 50,2}; <br />POINT *ppt = aptPentagon; <br />int cpt = 6; </p><p>&nbsp; . <br />&nbsp; . <br />&nbsp; . </p><p>case WM_CHAR: <br />&nbsp; &nbsp; switch (wParam) <br />&nbsp; &nbsp; { <br />&nbsp; &nbsp; &nbsp; &nbsp; case &#039;5&#039;: <br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; ppt = aptPentagon; <br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; cpt = 6; <br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; break; <br />&nbsp; &nbsp; &nbsp; &nbsp; case &#039;6&#039;: <br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; ppt = aptHexagon; <br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; cpt = 7; <br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; break; <br />&nbsp; &nbsp; } <br />&nbsp; &nbsp; InvalidateRect(hwnd, NULL, TRUE); <br />&nbsp; &nbsp; return 0L; </p><p>case WM_PAINT: <br />&nbsp; &nbsp; hdc = BeginPaint(hwnd, &amp;ps); <br />&nbsp; &nbsp; GetClientRect(hwnd, &amp;rc); <br />&nbsp; &nbsp; SetMapMode(hdc, MM_ANISOTROPIC); <br />&nbsp; &nbsp; SetWindowExtEx(hdc, 100, 100, NULL); <br />&nbsp; &nbsp; SetViewportExtEx(hdc, rc.right, rc.bottom, NULL); <br />&nbsp; &nbsp; Polyline(hdc, ppt, cpt); <br />&nbsp; &nbsp; EndPaint(hwnd, &amp;ps); <br />&nbsp; &nbsp; return 0L;</p>]]></content>
			<author>
				<name><![CDATA[bw]]></name>
			</author>
			<updated>2005-11-17T07:49:20Z</updated>
			<id>https://socionica.com/viewtopic.php?pid=38621#p38621</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Стыдно признаться, но у меня вопрос по программированию]]></title>
			<link rel="alternate" href="https://socionica.com/viewtopic.php?pid=36750#p36750" />
			<content type="html"><![CDATA[<p>А как этому поросёнку можно сказать, что программа занимается чем-то полезным (на самом деле она делает длинные вычисления и вывод точек)?</p>]]></content>
			<author>
				<name><![CDATA[kaprizka]]></name>
				<uri>https://socionica.com/profile.php?id=86</uri>
			</author>
			<updated>2005-11-08T11:22:35Z</updated>
			<id>https://socionica.com/viewtopic.php?pid=36750#p36750</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Стыдно признаться, но у меня вопрос по программированию]]></title>
			<link rel="alternate" href="https://socionica.com/viewtopic.php?pid=36540#p36540" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>kaprizka пишет:</cite><blockquote><p>Вот и возникает вопрос: по какому принципу WinXP режет таймслайсы?<br />Если при запуске аппликейшена как единственного на одиночном компьютере и от имени пользователя Admin (имеющего права администратора) аппликейшен через пять секунд тормозится. Если нажать Ctrl-Alt-Del и посмотреть процессы, то 98% процессорного времени занимает процесс &quot;Бездействие системы&quot;. Повышение приоритета процесса с приложением вплоть до &quot;Real-Time&quot; никак не меняет поведение.</p><p>Есть процессы, подозрительные из-за высокого приоритета:<br /><strong>csrss.exe</strong><br /><strong>winlogon.exe</strong><br />Что бы это csrss значило?</p></blockquote></div><p>паскалевкий RTL большую часть времени мотает пустой цикл ожидания клавиатуры (через сервис int 21h или не-помню-уже-что) или мышки (через int 33h) вот именно этот цикл ловится XP, которая считает, что программа ничем полезным в это время не занимается.</p>]]></content>
			<author>
				<name><![CDATA[xeye]]></name>
				<uri>https://socionica.com/profile.php?id=16</uri>
			</author>
			<updated>2005-11-07T10:20:29Z</updated>
			<id>https://socionica.com/viewtopic.php?pid=36540#p36540</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Стыдно признаться, но у меня вопрос по программированию]]></title>
			<link rel="alternate" href="https://socionica.com/viewtopic.php?pid=36531#p36531" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>xeye пишет:</cite><blockquote><p>таймслайсы система некорректно забирает. используй что-то типа <a href="http://www.tamedos.com/">http://www.tamedos.com/</a></p></blockquote></div><p>В описании сказано:<br />Tame solves these problems and many others.<br />Application changes the system date<br />Application forces the console to full screen mode<br />Application uses file locks excessively<br />Only one user at a time can start the application<br />Printing is delayed, or does not start until you exit the application<br />Application depends on BIOS services that are not implemented</p><p>Однако аппликейшн не меняет системную дату (и не использует её),<br />во время запуска аппликейшена скрин и так уже фулл,<br />к файлам обращается только в крайнем случае, а не постоянно,<br />запускается от одного юзера - а больше и не надо: компьтер к сетям не подключен,<br />принтер не используется, да его и нет,<br />BIOS сервисы тут, скорее всего, ни при чём - иначе бы и в Win98 те же глюки наблюдались.</p><p>Вот и возникает вопрос: по какому принципу WinXP режет таймслайсы?<br />Если при запуске аппликейшена как единственного на одиночном компьютере и от имени пользователя Admin (имеющего права администратора) аппликейшен через пять секунд тормозится. Если нажать Ctrl-Alt-Del и посмотреть процессы, то 98% процессорного времени занимает процесс &quot;Бездействие системы&quot;. Повышение приоритета процесса с приложением вплоть до &quot;Real-Time&quot; никак не меняет поведение.</p><p>Есть процессы, подозрительные из-за высокого приоритета:<br /><strong>csrss.exe</strong><br /><strong>winlogon.exe</strong><br />Что бы это csrss значило?</p>]]></content>
			<author>
				<name><![CDATA[kaprizka]]></name>
				<uri>https://socionica.com/profile.php?id=86</uri>
			</author>
			<updated>2005-11-07T09:34:40Z</updated>
			<id>https://socionica.com/viewtopic.php?pid=36531#p36531</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Стыдно признаться, но у меня вопрос по программированию]]></title>
			<link rel="alternate" href="https://socionica.com/viewtopic.php?pid=36420#p36420" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>kaprizka пишет:</cite><blockquote><p>И ещё, в Windows XP есть такая странность. Если запустить Far, а из него некую графическую DOS-программу, написанную на турбо-паскале, то она пять секунд работает, а потом виснет, продолжая работать. Если пошевелить мышку или нажать любую кнопку, она продолжит работу с нормальной скоростью, а через пять секунд снова остановится. В Windows 98 ничего подобного не происходит.</p></blockquote></div><p>таймслайсы система некорректно забирает. используй что-то типа <a href="http://www.tamedos.com/">http://www.tamedos.com/</a></p>]]></content>
			<author>
				<name><![CDATA[xeye]]></name>
				<uri>https://socionica.com/profile.php?id=16</uri>
			</author>
			<updated>2005-11-05T17:29:39Z</updated>
			<id>https://socionica.com/viewtopic.php?pid=36420#p36420</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Стыдно признаться, но у меня вопрос по программированию]]></title>
			<link rel="alternate" href="https://socionica.com/viewtopic.php?pid=36415#p36415" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>busak пишет:</cite><blockquote><p>дык в таймере... делаешь PostMessage чего нибудь. А в обработчике события делаешь Repaint. И все. Можно прямо из таймера делать WM_PAINT...</p></blockquote></div><p>Попробовал. На слово Repaint идёт ругань: необъявленный идентификатор. Видимо, нет такой встроенной функции (если б была, в редакторе появлялась бы автоподсказка о параметрах).</p><p>Посылка WM_PAINT из процедуры обработки таймера ничего не меняет в поведении программы. </p><br /><p>И ещё, в Windows XP есть такая странность. Если запустить Far, а из него некую графическую DOS-программу, написанную на турбо-паскале, то она пять секунд работает, а потом виснет, продолжая работать. Если пошевелить мышку или нажать любую кнопку, она продолжит работу с нормальной скоростью, а через пять секунд снова остановится. В Windows 98 ничего подобного не происходит.</p>]]></content>
			<author>
				<name><![CDATA[kaprizka]]></name>
				<uri>https://socionica.com/profile.php?id=86</uri>
			</author>
			<updated>2005-11-05T14:13:41Z</updated>
			<id>https://socionica.com/viewtopic.php?pid=36415#p36415</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Стыдно признаться, но у меня вопрос по программированию]]></title>
			<link rel="alternate" href="https://socionica.com/viewtopic.php?pid=36393#p36393" />
			<content type="html"><![CDATA[<p>дык в таймере... делаешь PostMessage чего нибудь. А в обработчике события делаешь Repaint. И все. Можно прямо из таймера делать WM_PAINT...</p>]]></content>
			<author>
				<name><![CDATA[busak]]></name>
				<uri>https://socionica.com/profile.php?id=254</uri>
			</author>
			<updated>2005-11-04T15:53:29Z</updated>
			<id>https://socionica.com/viewtopic.php?pid=36393#p36393</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Стыдно признаться, но у меня вопрос по программированию]]></title>
			<link rel="alternate" href="https://socionica.com/viewtopic.php?pid=36332#p36332" />
			<content type="html"><![CDATA[<p>в Microsoft Visual C++</p><p>Как можно в окне приложения нарисовать движущийся предмет?<br />Например, шарик. Или просто точку - ту, которая функцией SetPixel рисуется.<br />Или текст.<br />Скорость движения - как можно больше. Траектория - любая пошагово вычисляемая. Например, эллипс (замкнутая, чтоб за окно не вылазить).<br />Или рандом.</p><p>Проблема в том, что если рисовать его внутри обработки события WM_PAINT, то он рисуется лишь при ресайзинге окна (а в остальное время событие не вызывается).&nbsp; А если за пределами этого события (например, в процедуре таймера) - то он не рисуется вовсе (или рисуется где-нибудь на невидимом девайс-контексте, хотя DrawFocusRect рисует на том же девайс-контексте вполне видимый прямоугольник).</p><br /><p>И второй вопрос, ещё более ламерский: что нужно сказать транслятору, чтобы он не ругался &quot;unexpected end of file&quot; на новые добавляемые в проект файлы.<br />Замечу, что пока в проекте только один cpp-файл с программой - тот, который автоматически создан - компилятор не ругается, а нормально запускает приложение.</p>]]></content>
			<author>
				<name><![CDATA[kaprizka]]></name>
				<uri>https://socionica.com/profile.php?id=86</uri>
			</author>
			<updated>2005-11-03T20:15:35Z</updated>
			<id>https://socionica.com/viewtopic.php?pid=36332#p36332</id>
		</entry>
</feed>
