<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-5545501948591300623</id><updated>2012-02-15T23:52:45.372-08:00</updated><category term='DCOM'/><category term='C++'/><category term='GeckoFX'/><category term='RouterOS'/><category term='COM'/><category term='DNS'/><category term='Mikrotik'/><category term='VS2008'/><category term='Gecko'/><title type='text'>Brainsucker's Lair</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://brainsuckerna.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5545501948591300623/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://brainsuckerna.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>brainsucker</name><uri>http://www.blogger.com/profile/14768510123397778510</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>14</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-5545501948591300623.post-6398167876692329234</id><published>2011-12-26T00:35:00.000-08:00</published><updated>2011-12-26T00:35:15.002-08:00</updated><title type='text'>Auto KMS schedule fix</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;Fix for Auto KMS (EZ-Activator / Microsoft Toolkit) schedule (it wants to run at every reboot + every day, while required only once per 180 days, so we changing it to run once per month).&lt;br /&gt;&lt;br /&gt;Place these files at AutoKMS folder and run AutoKMS.bat by hands (from admin account) once.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;AutoKMS.bat&lt;br /&gt;&lt;blockquote class="tr_bq"&gt;c:&lt;br /&gt;cd c:\windows\AutoKms&lt;br /&gt;start /WAIT AutoKMS.exe&lt;br /&gt;c:&lt;br /&gt;cd c:\windows\AutoKms&lt;br /&gt;powershell -command "Set-ExecutionPolicy RemoteSigned"&lt;br /&gt;powershell -file autokms.ps1 &amp;gt; autokms.schedulelog&lt;br /&gt;powershell -command "Set-ExecutionPolicy AllSigned" &lt;/blockquote&gt;&lt;br /&gt;AutoKMS.ps1 &lt;br /&gt;&lt;blockquote class="tr_bq"&gt;$n = "AutoKMS"&lt;br /&gt;$s = new-object -com("Schedule.Service")&lt;br /&gt;$s.connect()&lt;br /&gt;$f = $s.getfolder("\")&lt;br /&gt;$t = $f.gettask($n)&lt;br /&gt;$d = $t.Definition&lt;br /&gt;$r = $d.Triggers.Item(1)&lt;br /&gt;$r.DaysInterval = 30&lt;br /&gt;$r = $d.Triggers.Item(2)&lt;br /&gt;$r.Enabled = $false&lt;br /&gt;$a = $d.Actions.Item(1)&lt;br /&gt;$a.Path= $a.Path.replace(".exe", ".bat")&lt;br /&gt;$f.RegisterTaskDefinition($n, $d, 0x24, $null, $null, 5, $null)&lt;/blockquote&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5545501948591300623-6398167876692329234?l=brainsuckerna.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://brainsuckerna.blogspot.com/feeds/6398167876692329234/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://brainsuckerna.blogspot.com/2011/12/auto-kms-schedule-fix.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5545501948591300623/posts/default/6398167876692329234'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5545501948591300623/posts/default/6398167876692329234'/><link rel='alternate' type='text/html' href='http://brainsuckerna.blogspot.com/2011/12/auto-kms-schedule-fix.html' title='Auto KMS schedule fix'/><author><name>brainsucker</name><uri>http://www.blogger.com/profile/14768510123397778510</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5545501948591300623.post-85308041429573157</id><published>2011-09-24T17:54:00.000-07:00</published><updated>2011-09-26T01:54:07.405-07:00</updated><title type='text'>Receiving fax (manually) with Samsung SCX-4623FN MFD</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;br /&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;"&gt;&lt;span style="font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;"&gt;Recently we had bought a SamsungSCX-4623FN multifunction device (MFD or MFP). We were very happy with ourpurchase for some days, until I found we can’t receive a fax in manual mode(during call, especially if it is outgoing call). In some cases you can askother party to call you back and wait for MFP to answer to incoming callautomatically, but as you understand that is not perfect solution. Googling,forums, Samsung support – nothing helped.&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;"&gt;&lt;span style="font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;"&gt;For the next 3 weeks I was spendingseveral hours each few days playing with MFD trying to solve that problem. Oneday it suddenly worked for one time, but then I wasn’t able to reproduce that foranother hour or two. Ouch &lt;/span&gt;&lt;span style="font-family: Wingdings; font-size: 12pt;"&gt;:)&lt;/span&gt;&lt;span style="font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;"&gt;Anyway, finally I found a way to do it, and here is my instruction (to saveyour precious time).&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;"&gt;&lt;span style="font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;"&gt;This method was only tested with SCX-4623FNand Panasonic DECT phone, but should also work with other Samsung MFDs (I’m notso sure about other manufacturers).&lt;br /&gt;&lt;br /&gt;How to receive fax in manual mode with Samsung MFD:&lt;/span&gt;&lt;/div&gt;&lt;ol start="1" type="A"&gt;&lt;li class="MsoNormal" style="line-height: normal; mso-list: l0 level1 lfo1; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list .5in;"&gt;&lt;span style="font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;"&gt;During outgoing or incoming calls. &lt;b style="mso-bidi-font-weight: normal;"&gt;The phone (one you are speaking with) SHOULD be plugged into EXT     socket of MFD&lt;/b&gt;. &lt;/span&gt;&lt;/li&gt;&lt;ol start="1" type="1"&gt;&lt;li class="MsoNormal" style="line-height: normal; mso-list: l0 level2 lfo1; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list 1.0in;"&gt;&lt;span style="font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;"&gt;Continue talking on the phone until other party will      turn on fax for sending.&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style="line-height: normal; mso-list: l0 level2 lfo1; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list 1.0in;"&gt;&lt;span style="font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;"&gt;Switch MFD to the Fax mode (with first button of Fax/Copier/Scanner      buttons column). This might not be required, but it is safer to do it,      than not.&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style="line-height: normal; mso-list: l0 level2 lfo1; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list 1.0in;"&gt;&lt;span style="font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;"&gt;Press &lt;b style="mso-bidi-font-weight: normal;"&gt;Off Hook&lt;/b&gt;      button (small button with Handset close to Start button). Phone will      become muted (you won’t hear the other party), but sound will appear from      MFD speaker immediately.&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style="line-height: normal; mso-list: l0 level2 lfo1; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list 1.0in;"&gt;&lt;span style="font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;"&gt;Press &lt;b style="mso-bidi-font-weight: normal;"&gt;Off Hook&lt;/b&gt;      button again. Sound will reappear in phone, MFD might show some text on the      screen ("Enter the number to dial and press start" or some      other crap).&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style="line-height: normal; mso-list: l0 level2 lfo1; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list 1.0in;"&gt;&lt;span style="font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;"&gt;Dial &lt;b&gt;*9* &lt;/b&gt;on the phone. MFD should show “Receiving fax…” on the      display. Dial&amp;nbsp;&lt;b&gt;*9*&lt;/b&gt; again if it is not appearing.&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style="line-height: normal; mso-list: l0 level2 lfo1; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list 1.0in;"&gt;&lt;span style="font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;"&gt;Try to repeat from 3) in case it didn’t work out.&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/ol&gt;&lt;ol start="2" type="A"&gt;&lt;li class="MsoNormal" style="line-height: normal; mso-list: l0 level1 lfo2; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list .5in;"&gt;&lt;span style="font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;"&gt;During incoming call (&lt;b style="mso-bidi-font-weight: normal;"&gt;only if phone and fax ringed at least once&lt;/b&gt;). &lt;/span&gt;&lt;/li&gt;&lt;ol start="1" type="1"&gt;&lt;li class="MsoNormal" style="line-height: normal; mso-list: l0 level2 lfo2; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list 1.0in;"&gt;&lt;span style="font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;"&gt;Answer to call from the phone plugged into MFD EXT      socket, continue talking until you will hear other’s party Fax tones.&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style="line-height: normal; mso-list: l0 level2 lfo2; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list 1.0in;"&gt;&lt;span style="font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;"&gt;Switch MFD to the Fax mode (with first button of Fax/Copier/Scanner      buttons column). This might not be required, but it is safer to do it,      than not.&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style="line-height: normal; mso-list: l0 level2 lfo2; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list 1.0in;"&gt;&lt;span style="font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;"&gt;Press &lt;b style="mso-bidi-font-weight: normal;"&gt;Off Hook&lt;/b&gt;      button (small button with Handset close to Start button). Phone will      become muted (you won’t hear the other party), but sound will appear from      MFD speaker immediately.&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style="line-height: normal; mso-list: l0 level2 lfo2; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list 1.0in;"&gt;&lt;b style="mso-bidi-font-weight: normal;"&gt;&lt;span style="font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;"&gt;IMPORTANT&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;"&gt;: Hang up the &lt;b style="mso-bidi-font-weight: normal;"&gt;&lt;u&gt;PHONE&lt;/u&gt;      &lt;/b&gt;(&lt;i style="mso-bidi-font-style: normal;"&gt;not MFD device&lt;/i&gt;).&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style="line-height: normal; mso-list: l0 level2 lfo2; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list 1.0in;"&gt;&lt;span style="font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;"&gt;Press &lt;b style="mso-bidi-font-weight: normal;"&gt;Start&lt;/b&gt;      button on MFD device. MFD should show “Receiving fax…” on the display.&lt;a href="http://www.blogger.com/blogger.g?blogID=5545501948591300623" name="cutid1-end"&gt;&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/ol&gt;&lt;div class="MsoNormal" style="line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;"&gt;&lt;span style="font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;"&gt;You can find the same instructionsin Russian here: &lt;/span&gt;&lt;a href="http://brainsucker.livejournal.com/61895.html"&gt;прием факса вручную на МФУ Samsung SCX-4623FN (при исходящем звонке&lt;/a&gt;&lt;span style="font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;"&gt;&lt;a href="http://brainsucker.livejournal.com/61895.html"&gt;)&lt;/a&gt;.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;"&gt;&lt;span style="font-size: xx-small;"&gt;seo: принять получить получение факса вручную исходящий звонок&lt;/span&gt; &lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5545501948591300623-85308041429573157?l=brainsuckerna.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://brainsuckerna.blogspot.com/feeds/85308041429573157/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://brainsuckerna.blogspot.com/2011/09/receiving-fax-manually-with-samsung-mfd.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5545501948591300623/posts/default/85308041429573157'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5545501948591300623/posts/default/85308041429573157'/><link rel='alternate' type='text/html' href='http://brainsuckerna.blogspot.com/2011/09/receiving-fax-manually-with-samsung-mfd.html' title='Receiving fax (manually) with Samsung SCX-4623FN MFD'/><author><name>brainsucker</name><uri>http://www.blogger.com/profile/14768510123397778510</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5545501948591300623.post-8435313873666003714</id><published>2011-09-14T15:37:00.000-07:00</published><updated>2011-09-14T15:42:05.629-07:00</updated><title type='text'>Adobe bug: apps terminated after 2 minutes</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;I spent several hours today trying to resolve the following problem: after several minutes from start, any program from Adobe Master Collection 5.5 (Photoshop CS5.1, Illustrator, Premier) will show message box with following text (&lt;b&gt;MSVCR90.dll&lt;/b&gt; was mentioned in caption):&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;i&gt;Runtime Error.&lt;/i&gt;&lt;i&gt; This application has requested the Runtime to terminate it it an unusual way.&lt;/i&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Google or Adobe Support Forums were not helpful at all, but finally I found answer at one russian forum (forum.ru-board.com, author: romby): &lt;b&gt;disabled AdobeAAMUpdater in windows scheduled tasks&lt;/b&gt;.&lt;br /&gt;Indeed, several days ago while performing background processes cleanup, I disabled that  &lt;b&gt;AdobeAAMUpdater-1.0-%computername%-%username%&lt;/b&gt; task since I don't need automatic every day checking for Adobe products updates at this particular computer. I never started any of Adobe products until today, and since some time passed I never suspected my action as reason for that problem. &lt;b&gt;Re-enabling scheduled task fixed the problem&lt;/b&gt;, and scheduling it for the first run on 01.01.2050 did no harm and caused no failures. &lt;br /&gt;&lt;br /&gt;While googling&amp;nbsp; for solution I found a lot of questions regarding similar message boxes (even for much older releases), but I'm not sure if they have the same reason. Anyway, I can't understand how and which Scheduled Task checking code path can lead to such catastrophic program failure (awful job, Adobe), so I just hope that post will be helpful for some of you, folks.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5545501948591300623-8435313873666003714?l=brainsuckerna.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://brainsuckerna.blogspot.com/feeds/8435313873666003714/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://brainsuckerna.blogspot.com/2011/09/nasty-adobe-software-bug.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5545501948591300623/posts/default/8435313873666003714'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5545501948591300623/posts/default/8435313873666003714'/><link rel='alternate' type='text/html' href='http://brainsuckerna.blogspot.com/2011/09/nasty-adobe-software-bug.html' title='Adobe bug: apps terminated after 2 minutes'/><author><name>brainsucker</name><uri>http://www.blogger.com/profile/14768510123397778510</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5545501948591300623.post-3352160389615603028</id><published>2011-07-25T07:32:00.000-07:00</published><updated>2011-07-25T07:32:54.799-07:00</updated><title type='text'>WinApi bug</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;One of computers in office (Win7 ultimate without any SPs) shows really strange behavior of FindFirstFile/FindNextFile winapi functions (and DIR command too, since it based on them, like any other high level methods): *.tif search mask doesn't return files with .tiff extension (2 f characters at the end). &lt;br /&gt;Same search mask returns both .tif and .tiff files on all other computers, with all different kinds of OSes: win7, win7sp1, winXPsp3, etc.&lt;br /&gt;Looks like major OS compatibility breakdown :)&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5545501948591300623-3352160389615603028?l=brainsuckerna.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://brainsuckerna.blogspot.com/feeds/3352160389615603028/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://brainsuckerna.blogspot.com/2011/07/winapi-bug.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5545501948591300623/posts/default/3352160389615603028'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5545501948591300623/posts/default/3352160389615603028'/><link rel='alternate' type='text/html' href='http://brainsuckerna.blogspot.com/2011/07/winapi-bug.html' title='WinApi bug'/><author><name>brainsucker</name><uri>http://www.blogger.com/profile/14768510123397778510</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5545501948591300623.post-313793335501010301</id><published>2011-01-23T04:47:00.000-08:00</published><updated>2011-01-23T04:47:19.446-08:00</updated><title type='text'>ZTE USB modem ZeroCD activation</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;After installing Vodafone USB modem (ZTE k3571-z) software on the Windows XP it considered the modem won't be used at any other places and disabled ZeroCD (drivers/software CD-ROM emulation based on modem built-in flash) functionality completely. &lt;br /&gt;Windows 7 one same computer detected modem and installed the drivers successfully, but nothing was working properly without the Vodafone (or any other generic ZTE) software. The solution was found at &lt;a href="http://wiki.vectormm.net/index.php/%D0%9E%D1%81%D0%BE%D0%B1%D0%B5%D0%BD%D0%BD%D0%BE%D1%81%D1%82%D0%B8_ZTE"&gt;this page&lt;/a&gt;:&lt;br /&gt;open any terminal program and use it to connect the main modem port (you can find one at Control Panel/Modems applet), enter the following commands:&lt;br /&gt;&lt;b&gt;AT+ZCDRUN=F&lt;br /&gt;AT+ZCDRUN=9&lt;/b&gt;&lt;br /&gt;Reinsert modem, the system should find a new CD-ROM disk and propose to start the modem software installation. Might also work with other ZTE modem's.&lt;br /&gt;&lt;span&gt;&lt;i&gt;SEO: ZTE k3571Z switch flash disk mode cd-rom terminal AT&lt;/i&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5545501948591300623-313793335501010301?l=brainsuckerna.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://brainsuckerna.blogspot.com/feeds/313793335501010301/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://brainsuckerna.blogspot.com/2011/01/zte-usb-modem-zerocd-activation.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5545501948591300623/posts/default/313793335501010301'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5545501948591300623/posts/default/313793335501010301'/><link rel='alternate' type='text/html' href='http://brainsuckerna.blogspot.com/2011/01/zte-usb-modem-zerocd-activation.html' title='ZTE USB modem ZeroCD activation'/><author><name>brainsucker</name><uri>http://www.blogger.com/profile/14768510123397778510</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5545501948591300623.post-8328485247453978847</id><published>2010-11-28T08:22:00.000-08:00</published><updated>2010-11-28T08:22:49.423-08:00</updated><title type='text'>Unlock for ZTE K3571-Z</title><content type='html'>Found some unlocking application for&amp;nbsp; ZTE K3571-Z (and may be some others ZTE, HUAWEI, etc.) modems. Seemed to work for me... &lt;br /&gt;&lt;a href="http://www.underground.mn/showthread.php?t=184537"&gt;Get it there.&lt;/a&gt;&lt;br /&gt;You'll have to register on forum to get download link (I don't want to steal credits for it)...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5545501948591300623-8328485247453978847?l=brainsuckerna.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://brainsuckerna.blogspot.com/feeds/8328485247453978847/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://brainsuckerna.blogspot.com/2010/11/unlock-for-zte-k3571-z.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5545501948591300623/posts/default/8328485247453978847'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5545501948591300623/posts/default/8328485247453978847'/><link rel='alternate' type='text/html' href='http://brainsuckerna.blogspot.com/2010/11/unlock-for-zte-k3571-z.html' title='Unlock for ZTE K3571-Z'/><author><name>brainsucker</name><uri>http://www.blogger.com/profile/14768510123397778510</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5545501948591300623.post-6528333603297210639</id><published>2010-06-20T06:20:00.000-07:00</published><updated>2010-06-20T06:22:36.194-07:00</updated><title type='text'>.net 1.1 (vs2003) applications on Windows 7 x64</title><content type='html'>I needed to create a demo application (LARGE one) built with Net 1.1 Framework for demonstration on Windows 7 x64 computers (it was just easier than prepare a Net 3.5 version). I've met several problems this way, may be some one will find this information useful:&lt;br /&gt;&lt;br /&gt;1. Windows 7 misses C-Runtime components for Vs2003, I mean MSVCR71.DLL file. If your program is using it, you should redistribute it (and place it in your program binaries directory or into System32 (for x86 windows)&amp;nbsp; / SysWow64 (for x64).&lt;br /&gt;&lt;br /&gt;2. Emulation (or backward compatibility) of&amp;nbsp; 1.1 framework works fine withing Windows 7 (framework 3.5sp1 integrated), beside one particular moment: NativeOverlapped object. Type of EventHandle field of this object was SILENTLY changed from &lt;b&gt;int &lt;/b&gt;to&lt;b&gt; IntPtr&lt;/b&gt; in move from Framework 1.1 to 2.0. This is very funny, since now any 1.1 programs using this object won't work at frameworks &amp;gt;=2.0 at all, with error looking like "&lt;b&gt;Unhandled AppDomain Exception (CLR is terminating: True): System.MissingFieldException: Field not found: 'System.Threading.NativeOverlapped.EventHandle'.&lt;/b&gt;".&lt;br /&gt;I don't know how you can help yourself if you haven't got source codes of net 1.1 application, otherwise the solution is simple: replace all direct accesses to this (EventHandle) field with indirect one, like this:&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Considering this declarations&lt;/b&gt; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;i&gt;NativeOverlapped addrChangeOverlapped = new NativeOverlapped();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; ManualResetEvent addrChangeEvent = new ManualResetEvent(false);&lt;/i&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;It was (in our application):&lt;/b&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;i&gt;addrChangeOverlapped.EventHandle = addrChangeEvent.Handle.ToInt32();&lt;/i&gt;&lt;br /&gt;&lt;i&gt; &lt;/i&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;It become (in version compatible for execution with net 3.5):&lt;/b&gt;&lt;br /&gt;&lt;i&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; IntPtr aceHandle = addrChangeEvent.Handle;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; FieldInfo aceFI = typeof(NativeOverlapped).GetField("EventHandle");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; aceFI.SetValue(addrChangeOverlapped,&amp;nbsp;&lt;/i&gt;&lt;br /&gt;&lt;i&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; aceFI.FieldType == typeof(int)?(object)aceHandle.ToInt32():aceHandle);&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/i&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5545501948591300623-6528333603297210639?l=brainsuckerna.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://brainsuckerna.blogspot.com/feeds/6528333603297210639/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://brainsuckerna.blogspot.com/2010/06/net-11-vs2003-applications-on-windows-7.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5545501948591300623/posts/default/6528333603297210639'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5545501948591300623/posts/default/6528333603297210639'/><link rel='alternate' type='text/html' href='http://brainsuckerna.blogspot.com/2010/06/net-11-vs2003-applications-on-windows-7.html' title='.net 1.1 (vs2003) applications on Windows 7 x64'/><author><name>brainsucker</name><uri>http://www.blogger.com/profile/14768510123397778510</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5545501948591300623.post-1747570875379892603</id><published>2010-03-06T17:21:00.000-08:00</published><updated>2010-03-06T17:21:06.863-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='VS2008'/><category scheme='http://www.blogger.com/atom/ns#' term='C++'/><title type='text'>svn and eol-style on Windows</title><content type='html'>Recently I had problems with one great tool - Resharper. Behaviour of this VS 2008 plugin in this particular situation wasn't perfect (showing boxes instead of text lines :), but it was easier to fix problem at our side than wait for resolution by developers.&lt;br /&gt;Resharper doesn't like unix style (LF) or mixed style (somewhere LF, somewhere CRLF) EOLs (end of line-s). And our big solution had many C# source files with wrong (for windows platform) EOLs. So sometimes in some files refactoring or even just working with Resharper enabled was impossible.&lt;br /&gt;I'm not sure about specific situation when our EOL's become damaged, but most likely this ocurred during migration from CVS to SVN. SVN contains built-in property to fix this problem (svn:eol-style set to native), so we only needed to:&lt;br /&gt;1. Set autoproperties (most our developers are using tortoisesvn so it was easier for us to set tsvn:autoprops property one time for solution root, efficiently enabling autoproperties for all our working copies) to enable svn:eol-style option for all files added in future. So we set &lt;b&gt;tsvn:autoprops &lt;/b&gt;property for project root to this value:&lt;br /&gt;&lt;blockquote&gt;*.c = svn:eol-style=native&lt;br /&gt;*.h = svn:eol-style=native&lt;br /&gt;*.cpp = svn:eol-style=native&lt;br /&gt;*.cs = svn:eol-style=native&lt;br /&gt;*.strings = svn:eol-style=native&lt;br /&gt;*.resx = svn:eol-style=native&lt;br /&gt;*.csproj = svn:eol-style=native&lt;br /&gt;*.sln = svn:eol-style=native&lt;br /&gt;*.sql = svn:eol-style=native&lt;br /&gt;*.config = svn:eol-style=native&lt;br /&gt;*.build = svn:eol-style=native&lt;br /&gt;*.tpl = svn:eol-style=native&lt;/blockquote&gt;2. Set svn:eol-style property for files already present at SVN repository. This was a tricky one (at least under windows), cause we needed to recurse all solution folders searching for .CS files, fix EOLs in them (otherwise svn won't accept eol-style property for these files), and set property. Ok, to make the script bellow work you'll need some client SVN binaries (I'd used &lt;a href="http://www.sliksvn.com/en/download"&gt;sliksvn&lt;/a&gt;) and &lt;a href="http://www.brains.by/misc/RegExRun.exe"&gt;this my small regex processing tool&lt;/a&gt; (requires .Net 3.5sp1). Ok, contents of BAT file (I named it &lt;b&gt;svnps.bat&lt;/b&gt;):&lt;br /&gt;&lt;blockquote&gt;@echo off&lt;br /&gt;for /R %%a IN (%1) DO (&lt;br /&gt;&lt;br /&gt;echo ---- processing %%a&lt;br /&gt;RegExRun.exe "(\r\n|\r|\n)" "\r\n" &amp;lt; "%%a" &amp;gt; "%%a.crlf"&lt;br /&gt;rename "%%a" "%%~nxa.old"&lt;br /&gt;rename "%%a.crlf" "%%~nxa"&lt;br /&gt;del /F /Q "%%a.old"&lt;br /&gt;"C:\Program Files\SlikSvn\bin\svn.exe" ps svn:eol-style native "%%a"&lt;br /&gt;&lt;br /&gt;)&lt;/blockquote&gt;Place this bat file and RegExRun.exe to &lt;b&gt;Program Files / Sliksvn / bin&lt;/b&gt; directory, go with command prompt (or FAR for example) to your SVN repository directory and run something like this:&lt;br /&gt;&lt;blockquote&gt;"C:\Program Files\SlikSvn\bin\svnps.bat" *.cs&lt;/blockquote&gt;This will fix all non DOS (non Windows) EOLs in .CS files in current path (recursively) and set svn:eol-style=native for each of them. Together with autoproperties that should resolve all your (and our) problems :)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5545501948591300623-1747570875379892603?l=brainsuckerna.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://brainsuckerna.blogspot.com/feeds/1747570875379892603/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://brainsuckerna.blogspot.com/2010/03/svn-and-eol-style-on-windows.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5545501948591300623/posts/default/1747570875379892603'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5545501948591300623/posts/default/1747570875379892603'/><link rel='alternate' type='text/html' href='http://brainsuckerna.blogspot.com/2010/03/svn-and-eol-style-on-windows.html' title='svn and eol-style on Windows'/><author><name>brainsucker</name><uri>http://www.blogger.com/profile/14768510123397778510</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5545501948591300623.post-4819412181444045073</id><published>2010-03-05T11:57:00.000-08:00</published><updated>2010-03-05T11:57:39.236-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='VS2008'/><category scheme='http://www.blogger.com/atom/ns#' term='C++'/><title type='text'>Beware of SHFileOperation</title><content type='html'>Take care in case you ever going to use &lt;b&gt;SHFileOperation&lt;/b&gt; function.&lt;br /&gt;Fields &lt;b&gt;pFrom &lt;/b&gt;and &lt;b&gt;pTo&lt;/b&gt; of SHFILEOPSTRUCT &lt;span style="font-size: large;"&gt;must be &lt;span style="font-size: x-large;"&gt;&lt;b&gt;double&lt;/b&gt;&lt;/span&gt;-null terminated!&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: large;"&gt;&lt;span style="font-size: small;"&gt;Even if you are passing only one file name.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: large;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&lt;/span&gt; &lt;/span&gt;&lt;br /&gt;P.s. Our tech.support guys informed me about funny thing: last version of one of our products distributed to clients was removing &lt;b&gt;boot.ini&lt;/b&gt;, &lt;b&gt;ntldr&lt;/b&gt;, and other files at C:\ during uninstall. Yes, due to missing second null. &lt;b&gt;Evil :)&lt;/b&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5545501948591300623-4819412181444045073?l=brainsuckerna.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://brainsuckerna.blogspot.com/feeds/4819412181444045073/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://brainsuckerna.blogspot.com/2010/03/beware-of-shfileoperation.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5545501948591300623/posts/default/4819412181444045073'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5545501948591300623/posts/default/4819412181444045073'/><link rel='alternate' type='text/html' href='http://brainsuckerna.blogspot.com/2010/03/beware-of-shfileoperation.html' title='Beware of SHFileOperation'/><author><name>brainsucker</name><uri>http://www.blogger.com/profile/14768510123397778510</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5545501948591300623.post-787709918728080207</id><published>2010-02-13T05:15:00.000-08:00</published><updated>2010-02-13T05:16:53.118-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='VS2008'/><category scheme='http://www.blogger.com/atom/ns#' term='C++'/><title type='text'>Visual Studio 2008 failed to start</title><content type='html'>One funny problem just happened with my computer for the second time in half-a-year.&lt;br /&gt;Visual Studio 2008 (MS VS2008 SP1 with ATL fixes) suddenly refused to run and displayed the following problem: "Cannot find one or more components. Please reinstall the application".&lt;br /&gt;&lt;br /&gt;This thread contains the detailed desciption of the problem and similar user stories: &lt;a href="http://social.msdn.microsoft.com/Forums/en/vssetup/thread/76713427-0daa-4907-a017-633ad258a5af"&gt;http://social.msdn.microsoft.com/Forums/en/vssetup/thread/76713427-0daa-4907-a017-633ad258a5af&lt;/a&gt;&lt;br /&gt;It actually helped me very much to resolve this problem for the first and second times.&lt;br /&gt;&lt;br /&gt;The second time it was the same file, but I still don't know what kind of software/installation  removed it.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;WinSxS\x86_Microsoft.VC90.ATL_1fc8b3b9a1e18e3b_9.0.30729.4148_x-ww_353599c2\ATL90.DLL&lt;/b&gt;  &lt;br /&gt;&lt;br /&gt;The easiest way to restore it is to download and install  vcredist_x86 (redistributable for Visual C++ 2008 SP1 with ATL security  update) from here (if your computer is missing the same file): &lt;br /&gt;&lt;a href="http://www.microsoft.com/downloads/details.aspx?familyid=2051A0C1-C9B5-4B0A-A8F5-770A549FD78C&amp;amp;displaylang=en"&gt;http://www.microsoft.com/downloads/details.aspx?familyid=2051A0C1-C9B5-4B0A-A8F5-770A549FD78C&amp;amp;displaylang=en&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I wouldn't recommend copying atl90.dll from any x86 directory  inside WinSxS since they all different versions, and this one actually  contains some security fixes.&lt;br /&gt;&lt;br /&gt;P.S. You need to start profiling  (F7) in depends (Dependancy Walker, rocks!) to see which dlls are really  required and missing on your system.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5545501948591300623-787709918728080207?l=brainsuckerna.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://brainsuckerna.blogspot.com/feeds/787709918728080207/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://brainsuckerna.blogspot.com/2010/02/visual-studio-2008-failed-to-start.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5545501948591300623/posts/default/787709918728080207'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5545501948591300623/posts/default/787709918728080207'/><link rel='alternate' type='text/html' href='http://brainsuckerna.blogspot.com/2010/02/visual-studio-2008-failed-to-start.html' title='Visual Studio 2008 failed to start'/><author><name>brainsucker</name><uri>http://www.blogger.com/profile/14768510123397778510</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5545501948591300623.post-6736203125040982711</id><published>2010-02-02T05:10:00.000-08:00</published><updated>2010-02-02T05:11:26.372-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='DNS'/><category scheme='http://www.blogger.com/atom/ns#' term='RouterOS'/><category scheme='http://www.blogger.com/atom/ns#' term='Mikrotik'/><title type='text'>Mikrotik RouterOS and domain (active directory) DNS requests forwarding</title><content type='html'>I'm using mikrotik router at home, with RB150 constantly handling connection to provider (PPPoE) and to my office (VPN over internet).&lt;br /&gt;However since router is using provider's DNS, it is not possible to work with shared folders or perform any other domain tasks (while office IPs are readily accessible). Anything using active directory will fail, since any computer in home won't be able to resolve domain controllers.&lt;br /&gt;&lt;br /&gt;How to fix this:&lt;br /&gt;1. added layer7 matcher for \x06\x5Fmsdcs\x08mydomain\x03com&lt;br /&gt;(you need to replace mydomain.com with your domain address). &lt;br /&gt;each domain part preceded with \x and number of characters in hex, \x5F is&amp;nbsp; _ symbol. &lt;br /&gt;whenever computer tries to find active directory servers it requests for multiple DNS records all ending with _msdcs.yourdomain.com.&lt;br /&gt;&lt;b&gt;&lt;br /&gt;&lt;span style="color: #0b5394;"&gt;/ip firewall layer7-protocol&lt;/span&gt;&lt;br style="color: #0b5394;" /&gt;&lt;span style="color: #0b5394;"&gt;add comment="" name=activedirectory regexp=\&lt;/span&gt;&lt;br style="color: #0b5394;" /&gt;&lt;span style="color: #0b5394;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; "\\x06\\x5Fmsdcs\\x06itsoft\\x02by"&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;2. added mangle to mark dns request packets matching our layer7 rule and our dns server as destination&lt;br /&gt;&lt;br /&gt;&lt;b style="color: #0b5394;"&gt;/ip firewall mangle&lt;br /&gt;add action=mark-packet chain=prerouting comment="" disabled=no dst-address=\&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 192.168.0.200 dst-port=53 layer7-protocol=activedirectory \&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; new-packet-mark=activedirectory passthrough=yes protocol=udp&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;3. added dst-nat rule to route active directory specific requests to actual domain server&lt;br /&gt;&lt;br /&gt;&lt;b style="color: #0b5394;"&gt;/ip firewall nat&lt;br /&gt;add action=dst-nat chain=dstnat comment=\&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; "forward active directory DNS requests" disabled=no dst-port=53 \&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; packet-mark=activedirectory protocol=udp to-addresses=10.10.0.201 \&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; to-ports=53&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;that's all. it works, at least in my particular configuration.&lt;br /&gt;may be there are easier solutions, but I wasn't able to find any.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5545501948591300623-6736203125040982711?l=brainsuckerna.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://brainsuckerna.blogspot.com/feeds/6736203125040982711/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://brainsuckerna.blogspot.com/2010/02/mikrotik-routeros-and-domain-active.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5545501948591300623/posts/default/6736203125040982711'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5545501948591300623/posts/default/6736203125040982711'/><link rel='alternate' type='text/html' href='http://brainsuckerna.blogspot.com/2010/02/mikrotik-routeros-and-domain-active.html' title='Mikrotik RouterOS and domain (active directory) DNS requests forwarding'/><author><name>brainsucker</name><uri>http://www.blogger.com/profile/14768510123397778510</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5545501948591300623.post-3262607042140799061</id><published>2010-01-04T04:50:00.000-08:00</published><updated>2010-01-04T05:05:48.235-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='GeckoFX'/><category scheme='http://www.blogger.com/atom/ns#' term='Gecko'/><title type='text'>GeckoFX Multi 1.9.1.0 v.1</title><content type='html'>&lt;span style="font-weight: bold;font-size:130%;" &gt;&lt;a href="http://brains.by/misc/GeckoFx.Multi.1.9.1.0.v1.zip"&gt;Download GeckoFX Multi 1.9.1.0 v.1&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;What is it?&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;GeckoFx Multi is modified GeckoFx library which:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Has built-in discovery of Gecko's based applications (like Firefox)&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;Can be used with any Gecko version from: 1.8.1, 1.9.0, 1.9.1, 1.9.2b5, meaning it is compatible with the installations of:&lt;/li&gt;&lt;/ul&gt;    XULRunner 2.0.x-... (Gecko 1.8.1.x-1.9.2b5)&lt;br /&gt;    Firefox 3.0 (or any other Gecko 1.9.0.x installation)&lt;br /&gt;    Firefox 3.5 (or any other Gecko 1.9.1.x installation)&lt;br /&gt;    Firefox 3.6b5 (or any other Gecko 1.9.2b5 installation)&lt;br /&gt;&lt;ul&gt;&lt;li&gt; Single library (single compilation) for any Gecko version.&lt;/li&gt;&lt;/ul&gt;GeckoFx Multi will probably retain compatibility with Gecko 1.9.2 (release of Firefox 3.6), but this can't be guaranteed at the moment.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-size:130%;" &gt;Getting Started&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;GeckoFx is a very nice library developed by Skybound Software, which has one little drawback: it can be used only with specific version of XULRunner it was compiled for. It's not a big deal if&lt;br /&gt;you are able to redistribute the always up-to-date XulRunner with your software, but it becomes a problem if your installation has to be as small as possible and you want to use  Gecko installed at user's system (for example Firefox browser, which will probably be up-to-date itself).&lt;br /&gt;&lt;br /&gt;Example of such program is HLR Ban Poster (http://garena.brains.by), with setup less than 1 mb in size, which autodetects and uses any Gecko available at user's system, and can rollback to standard Microsoft WebBrowser control in the worst case.&lt;br /&gt;&lt;br /&gt;GeckoFx Multi uses proxies and custom marshalers to retain compatibility with xpcom NS interfaces changed in different Gecko versions.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-size:130%;" &gt;Reliability and Compatibility&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;GeckoFx Multi modification was developed especially for use in one particular project (HLR Ban Poster), and wasn't throughly examinated in other conditions. All code inside original GeckoFx for supporting different Gecko versions was retained and converted, but wasn't throughly tested, so 100% compatibility can't be guaranteed.&lt;br /&gt;&lt;br /&gt;In some situations GeckoFx Multi may work worse than original library, so if you need a stable Gecko-based control working with single dedicated version of Gecko engine I recommend using the latest library from SkyBound website (http://www.geckofx.org) instead.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="font-weight: bold;"&gt;How to use&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;The same way like you used usual GeckoFx. The same control, the same initialization, GeckoFxMulti should work instead of original GeckoFx library without any code modifications.&lt;br /&gt;&lt;br /&gt;If you want to initialize GeckoFx with the latest supported version of Gecko present in the system (searches registry for applications distributed with Gecko (like Firefox), release versions are preferred over alpha/beta) use the following initializer:&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;Skybound.Gecko.Xpcom.Initialize(true);&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;The other possibility is to get all geckos detected at the system and give user the ability to select the desired one:&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;// just use auto detection&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);"&gt;var gad = Skybound.Gecko.GeckoAppDiscovery();&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 102, 0);"&gt;// use auto detection and provide several custom gecko paths to check.&lt;/span&gt;&lt;span style="color: rgb(0, 102, 0);"&gt;&lt;br /&gt;// you can also add custom gecko path to check using AddGeckoPath method&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;var gad = Skybound.Gecko.GeckoAppDiscovery("c:\\xul2.0", "c:\\firefoxportable3.6b5");&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;gad.AddGeckoPath("d:\\firefox");&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;After Gecko's discovery you can retrieve the list of all or valid-only geckos using the gad.Geckos or gad.ValidGeckos properties. Also you can initialize a single GeckoAppInfo class this way:&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;var gai = new Skybound.Gecko.GeckoAppInfo("d:\\firefox");&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;When your GeckoAppInfo structure is prepared (selected from ValidGeckos list or filled in manually), you can pass it to the Initialize method:&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;Skybound.Gecko.Xpcom.Initialize(gai);&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Please note: you can't initialize several Gecko's at once or one after another, the only possible solution to let user pick second Gecko and initialize it is to restart your process (if your software is using a separate AppDomain for Gecko browser, it should be possible to reload just this AppDomain).&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-size:130%;" &gt;Changelog&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;1.9.1.0 v.1 based on GeckoFx 1.9.1.0 (4 Jan 2010)&lt;/span&gt;&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Merged SkyBound modifications for GeckoFx 1.9.1.0.&lt;/li&gt;&lt;li&gt;nsIDOMHTMLDocument.Get/SetTitle: changed back to nsAString, nsAUTF8String (introduced at GeckoFx 1.9.1) seems inappropriate here.&lt;/li&gt;&lt;li&gt;Support for PreAlpha/Alpha/Beta Gecko sub-versions.&lt;/li&gt;&lt;li&gt;Prepared for public release (additional constructor, etc).&lt;/li&gt;&lt;li&gt;Preliminary support for Gecko 1.9.2 (tested with Firefox 3.6b5).&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5545501948591300623-3262607042140799061?l=brainsuckerna.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://brainsuckerna.blogspot.com/feeds/3262607042140799061/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://brainsuckerna.blogspot.com/2010/01/geckofx-multi-1910-v1.html#comment-form' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5545501948591300623/posts/default/3262607042140799061'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5545501948591300623/posts/default/3262607042140799061'/><link rel='alternate' type='text/html' href='http://brainsuckerna.blogspot.com/2010/01/geckofx-multi-1910-v1.html' title='GeckoFX Multi 1.9.1.0 v.1'/><author><name>brainsucker</name><uri>http://www.blogger.com/profile/14768510123397778510</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5545501948591300623.post-5350147820404058767</id><published>2009-08-27T08:45:00.000-07:00</published><updated>2010-01-04T05:28:34.173-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='DCOM'/><category scheme='http://www.blogger.com/atom/ns#' term='COM'/><category scheme='http://www.blogger.com/atom/ns#' term='C++'/><title type='text'>Small DCOM "things" regarding custom marshaling, size_is</title><content type='html'>Have problems with DCOM? size_is or length_is are not working? From the whole array passed as byte* parameter only the first byte is reaching the COM server or client? You need to create the proxy/stub DLL (&lt;a href="http://www.biztalkgurus.com/blogs/biztalksyn/archive/2006/02/28/COM-proxy-stub-dll-and-why-do-you-need-it.aspx"&gt;http://www.biztalkgurus.com/blogs/bizt&lt;wbr&gt;alksyn/archive/2006/02/28/COM-proxy-stub-d&lt;wbr&gt;ll-and-why-do-you-need-it.aspx&lt;/a&gt;) and register it on the both systems. TLB doesn't contains the exact parameters definition (like size_is), so without this proxy/stub (which defines Custom Marshaler for your COM component) COM doesn't know how to correctly pass your data over the border.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-style: italic;"&gt;--- &lt;span style="font-weight: bold;"&gt;in Russian :)&lt;/span&gt; --- &lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;Мучаетесь с DCOM? Не работают size_is и length_is? Из массива-параметра (например byte*) передаеться только 1 байт? Вам необходимо сделать proxy/stub dll (&lt;a href="http://www.biztalkgurus.com/blogs/biztalksyn/archive/2006/02/28/COM-proxy-stub-dll-and-why-do-you-need-it.aspx"&gt;http://www.biztalkgurus.com/blogs/bizt&lt;wbr&gt;alksyn/archive/2006/02/28/COM-proxy-stub-d&lt;wbr&gt;ll-and-why-do-you-need-it.aspx&lt;/a&gt;), и зарегить её на обоих системах. Проблема в том что TLB не содержит всего богатства информации о параметрах, например size_is и т.д. и без proxy/stub COM не знает как маршалить данные.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5545501948591300623-5350147820404058767?l=brainsuckerna.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://brainsuckerna.blogspot.com/feeds/5350147820404058767/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://brainsuckerna.blogspot.com/2009/08/small-dcom-things-regarding-custom.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5545501948591300623/posts/default/5350147820404058767'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5545501948591300623/posts/default/5350147820404058767'/><link rel='alternate' type='text/html' href='http://brainsuckerna.blogspot.com/2009/08/small-dcom-things-regarding-custom.html' title='Small DCOM &quot;things&quot; regarding custom marshaling, size_is'/><author><name>brainsucker</name><uri>http://www.blogger.com/profile/14768510123397778510</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5545501948591300623.post-2422269152492998634</id><published>2009-06-24T17:33:00.001-07:00</published><updated>2010-01-04T06:02:04.249-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='C++'/><title type='text'></title><content type='html'>I've almost finished removing any traces of CRT usage from my DLL (yes, another fight to get less than 4k integration module ;), when become stuck with _memset usage somewhere. Assembly language output turned on, and... omg...&lt;span style="color: #006600; font-family: lucida grande;"&gt;&lt;br /&gt;&lt;br style="color: #38761d;" /&gt;&lt;/span&gt;&lt;span style="color: #38761d; font-family: lucida grande;"&gt;&amp;nbsp;; 75&amp;nbsp;&amp;nbsp; :&amp;nbsp; OPENFILENAME ofn;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #38761d; font-family: lucida grande;"&gt;&amp;nbsp;; 76&amp;nbsp;&amp;nbsp; :&amp;nbsp; for (int b = 0; b &amp;lt; sizeof(ofn); b++)&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #38761d; font-family: lucida grande;"&gt;&amp;nbsp;; 77&amp;nbsp;&amp;nbsp; :&amp;nbsp;&amp;nbsp; ((byte*)&amp;amp;ofn)[b] = 0;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: lucida grande;"&gt;00014 6a 58&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: blue;"&gt;                 push  88        ; 00000058H&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: lucida grande;"&gt;00016 8d 44 24 14 &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span style="color: blue;"&gt;       lea   eax, DWORD PTR _ofn$[esp+108]&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: lucida grande;"&gt;0001a 53 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;push  ebx&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: lucida grande;"&gt;0001b 50 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style="color: blue;"&gt;                      push  eax&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: lucida grande;"&gt;0001c 88 1e&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;                mov   BYTE PTR [esi], bl&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: lucida grande;"&gt;0001e e8 00 00 00 00&amp;nbsp; &lt;span style="color: blue;"&gt; call  _memset&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: lucida grande;"&gt;00023 83 c4 0c &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;            &lt;span style="color: blue;"&gt;add   esp, 12   ; 0000000cH&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Hm... That wasn't what I asked for, actually :)&lt;br /&gt;&lt;br /&gt;P.S. To say truth, I've spent almost half an hour trying to fool compiler to leave my cycle untouched. Simple math operations doesn't help (beside MOD variants), the easiest solution was to reverse cycle :D&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5545501948591300623-2422269152492998634?l=brainsuckerna.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://brainsuckerna.blogspot.com/feeds/2422269152492998634/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://brainsuckerna.blogspot.com/2010/01/ive-almost-finished-removing-any-traces.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5545501948591300623/posts/default/2422269152492998634'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5545501948591300623/posts/default/2422269152492998634'/><link rel='alternate' type='text/html' href='http://brainsuckerna.blogspot.com/2010/01/ive-almost-finished-removing-any-traces.html' title=''/><author><name>brainsucker</name><uri>http://www.blogger.com/profile/14768510123397778510</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>
