tag:blogger.com,1999:blog-86738941175126670622024-03-08T01:07:54.553-08:00Speed of LightLittlejohnhttp://www.blogger.com/profile/10557738738000892339noreply@blogger.comBlogger7125tag:blogger.com,1999:blog-8673894117512667062.post-62694910722620918892011-01-21T15:34:00.000-08:002011-01-21T15:41:02.289-08:00Outlook Anywhere Configuration by Script (GPO/Login Script)Outlook Anywhere Configuration by Script (GPO/Login Script)<br /><br /><br />Need to configure your Outlook Clients for Outlook Anywhere? You can do this with a VBScript that you can plug into a GPO or run it as part of your login script. There aren't a whole lot of articles out there about this, one, maybe two of any real use. So I need to make sure I give credit for getting me started on this path to begin with.<br /><br />Cyrus: <a href="http://cyrusbuilt.net/wordpress/?p=150">http://cyrusbuilt.net/wordpress/?p=150</a><br /><br />Anyhow, on to the show! So taking the info from the previously mentioned article, some C# and some VBS and I have a way you can change users mail settings for Outlook Anywhere. As of right now, it will only setup the Server name, on Fast/Slow networks, and Authentication methods.<br /><br />You need to get hex values, so I wrote this page with C# to generate part of the VBScript code for you. Use this link to generate the Code that goes in between these blocks in the code<br /><a href="http://www.intellus.net/support/HexConverterInline.aspx">http://www.intellus.net/support/HexConverterInline.aspx</a><br /><br />The script you want to download is here:<br /><a href="http://www.intellus.net/support/OutlookAnywhereConfig.txt">http://www.intellus.net/support/OutlookAnywhereConfig.txt</a><br /><br />Basically, here is what the keys do:<br /><br /><span style="font-weight: bold;">Reg Value: 00036623</span><br />Represents the "connect using HTTP Fast or Slow" settings<br />off = key doesn't exist<br />on only 03 00 00 00 <br />on + slow 23 00 00 00<br />on + fast 0b 00 00 00<br />on + fast + slow 2b 00 00 00<br /> <br /><span style="font-weight: bold;">Reg Value: 00036627</span><br />Represents the Authentication type<br />01 00 00 00 = Basic<br />02 00 00 00 = NTLM<br /><br />The script is currently setup for "mail.testdomain.com"<br /><br /><br />'**********************************************************************************************<br />'**********************************************************************************************<br />'**********************************BEGIN VARIABLE BLOCK****************************************<br />'**********************************************************************************************<br />'**********************************************************************************************<br />'**********************************************************************************************<br />iKey1="00036623"<br />iValue1 = Array(&H2b,&H00,&H00,&H00)<br /><br /><br />iKey2 = "00036627"<br />iValue2 = Array(&H01,&H00,&H00,&H00)<br /><br /><br />iKey3 = "001f6622"<br />iValue3 = Array(&H6D,&H00,&H61,&H00,&H69,&H00,&H6C,&H00,&H2E,&H00,&H74,&H00,&H65,&H00,&H73,&H00,&H74,&H00,&H64,&H00,&H6F,&H00,&H6D,&H00,&H61,&H00,&H69,&H00,&H6E,&H00,&H2E,&H00,&H63,&H00,&H6F,&H00,&H6D,&H00,&H00)<br />'**********************************************************************************************<br />'**********************************************************************************************<br />'***********************************END VARIABLE BLOCK*****************************************<br />'**********************************************************************************************<br />'**********************************************************************************************<br />'**********************************************************************************************<br /><br /><br /><br /><br /><span style="font-weight: bold;">Follow these instructions. </span><br /><span style="font-weight: bold;">1. </span>First copy the script below to a file and rename it to *.vbs.<br /><a href="http://www.intellus.net/support/OutlookAnywhereConfig.txt">http://www.intellus.net/support/OutlookAnywhereConfig.txt</a><br /> OR<br /> Copy the code below between<br />"************************Script Begin************************"<br />and<br />"************************Script End************************"<br /><span style="font-weight: bold;">2. </span>Next hit this link to determine what settings you want. When you select your settings, it generate the HEX strings required.<br /><span style="font-weight: bold;">3. </span>Once you get the settings, copy and paste it into your script and replace the big block of stars that<br />say "REPLACE ME WITH THE CODE FROM THE HEX GENERATOR"<br /><br /><br /><br /><span style="font-weight: bold; color: rgb(255, 0, 0);">*** Here's the fine print: I offer no guarantees on this, please use at your own risk. Make sure you test this on a test environment over and over to make sure it does what you want it to do.</span><br /><span style="font-weight: bold; color: rgb(255, 0, 0);"> Feel free to contact me if you have any questions though!</span><br /><br /><br /><br /><br /><br /><br /><br />"************************Script Begin************************"<br />'--------------------------------------------------------------------------------<br />'<br />'<br />'<br />'<br />'<br />' Outlook Anywhere Config via Login Script<br />' Will configure Outlook Client<br />' 1/1/2011<br />' Author Name<br />'<br />' connect using HTTP<br />' off = key doesn't exist<br />' on only 03 00 00 00 <br />' on + slow 23 00 00 00<br />' on + fast 0b 00 00 00<br />' on + fast + slow 2b 00 00 00<br />' <br />' Auth type<br />' 01 00 00 00 = Basic<br />' 02 00 00 00 = NTLM<br />'<br />'<br />'<br />'<br />'--------------------------------------------------------------------------------<br />On Error Resume Next<br /><br />Const HKEY_CURRENT_USER = &H80000001<br /><br />strComputer = "."<br />Set objReg=GetObject("winmgmts:{impersonationLevel=impersonate}!\\" & strComputer & "\root\default:StdRegProv")<br /><br />strKeyPath = "Software\Microsoft\Windows NT\CurrentVersion\Windows Messaging Subsystem\Profiles"<br />strSubKeyPath = "\13dbb0c8aa05101a9bb000aa002fc45a"<br /><br />blnResult1 = true<br />blnResult2 = true<br />blnResult3 = true<br /><br />'**********************************************************************************************<br />'**********************************************************************************************<br />'**********************************BEGIN VARIABLE BLOCK****************************************<br />'**********************************************************************************************<br />'**********************************************************************************************<br />'**********************************************************************************************<br />iKey1="00036623"<br />iValue1 = Array(&H2b,&H00,&H00,&H00)<br /><br /><br />iKey2 = "00036627"<br />iValue2 = Array(&H01,&H00,&H00,&H00)<br /><br /><br />iKey3 = "001f6622"<br />iValue3 = Array(&H6D,&H00,&H61,&H00,&H69,&H00,&H6C,&H00,&H2E,&H00,&H74,&H00,&H65,&H00,&H73,&H00,&H74,&H00,&H64,&H00,&H6F,&H00,&H6D,&H00,&H61,&H00,&H69,&H00,&H6E,&H00,&H2E,&H00,&H63,&H00,&H6F,&H00,&H6D,&H00,&H00)<br />'**********************************************************************************************<br />'**********************************************************************************************<br />'***********************************END VARIABLE BLOCK*****************************************<br />'**********************************************************************************************<br />'**********************************************************************************************<br />'**********************************************************************************************<br /><br /><br /><br />'get the registry key object for strKeyPath<br />objReg.EnumKey HKEY_CURRENT_USER, strKeyPath, arrSubkeys <br /><br />'loop through all keys in the strKeyPath so you get all profile names in there.<br />For Each strSubkey In arrSubkeys<br /><br /> strKeyPathFull = strKeyPath & "\" & strSubKey<br /><br /> 'get the first value to determine if Outlook Anywhere is turned on<br /> strReturn = objReg.GetBinaryValue(HKEY_CURRENT_USER, strKeyPathFull & strSubKeyPath,iKey1, arrVal)<br /> <br /> 'if exists, then proceed<br /> if strReturn = 0 then<br /> <br /> '*****************************************Begin Options Key****************************************************<br /> 'Options key - check to see if theres a match, if not, change it, if match, then bypass<br /> 'get the current value for server, if there's a match, proceed to correct auth key<br /> strReturn1 = objReg.GetBinaryValue(HKEY_CURRENT_USER, strKeyPathFull & strSubKeyPath,iKey3, arrVal1)<br /> 'if exists, then proceed<br /> if strReturn1 = 0 then<br /> for i1 = 0 to ubound(arrVal1)<br /> for i2 = 0 to ubound(iValue1)<br /> if i1=i2 then<br /> if arrVal1(i1) <> iValue1(i2) then<br /> blnResult1 = false<br /> 'msgbox "nomatch3: " & arrVal2(i1) & " " & iValue3(i2)<br /> end if<br /> end if<br /> next<br /> next<br /> end if<br /> 'No match make the change, else bypass<br /> if blnResult1 = false then<br /> 'make the change<br /> objReg.SetBinaryValue HKEY_CURRENT_USER,strKeyPathFull & strSubKeyPath,iKey1,iValue1<br /> end if<br /> '*****************************************End Options Key****************************************************<br /> <br /> <br /> <br /> '*****************************************Begin Auth Type Key****************************************************<br /> 'Auth type key - check to see if theres a match, if not, change it, if match, then bypass<br /> 'get the current value for server, if there's a match, proceed to correct auth key<br /> strReturn2 = objReg.GetBinaryValue(HKEY_CURRENT_USER, strKeyPathFull & strSubKeyPath,iKey2, arrVal2)<br /> 'if exists, then proceed<br /> if strReturn2 = 0 then<br /> for i1 = 0 to ubound(arrVal2)<br /> for i2 = 0 to ubound(iValue2)<br /> if i1=i2 then<br /> if arrVal2(i1) <> iValue2(i2) then<br /> blnResult2 = false<br /> 'msgbox "nomatch2: " & arrVal2(i1) & " " & iValue2(i2)<br /> end if<br /> end if<br /> next<br /> next<br /> end if<br /> 'No match make the change, else bypass<br /> if blnResult2 = false then<br /> 'make the change<br /> objReg.SetBinaryValue HKEY_CURRENT_USER,strKeyPathFull & strSubKeyPath,iKey2,iValue2<br /> end if<br /> '*****************************************End Auth Type Key****************************************************<br /> <br /> <br /> '*****************************************Begin Server Key****************************************************<br /> 'Server key - check to see if theres a match, if not, change it, if match, then bypass<br /> 'get the current value for server, if there's a match, proceed to correct auth key <br /> 'get the 2nd key, if correct, bypass, if wrong, then correct it<br /> strReturn3 = objReg.GetBinaryValue(HKEY_CURRENT_USER, strKeyPathFull & strSubKeyPath,iKey3, arrVal3)<br /> <br /> 'build comparison to see if it's the same, if same bypass, if different, correct (set to basic)<br /> if strReturn3 = 0 then<br /> for i1 = 0 to ubound(arrVal3)<br /> for i2 = 0 to ubound(iValue3)<br /> if i1=i2 then<br /> if arrVal3(i1) <> iValue3(i2) then<br /> blnResult3 = false<br /> 'msgbox "nomatch3: " & arrVal3(i1) & " " & iValue3(i2)<br /> end if<br /> end if<br /> next<br /> next<br /> end if<br /> 'if there's a match, then bypass, if no match, then correct it<br /> if blnResult3 = false then<br /> 'msgbox "setting keys" & vbcrlf & strKeyPathFull & strSubKeyPath & vbcrlf & iKey2<br /> objReg.SetBinaryValue HKEY_CURRENT_USER,strKeyPathFull & strSubKeyPath,iKey3,iValue3 <br /> end if<br /> '*****************************************End Server Key****************************************************<br /><br /> else<br /> 'key doesn't exist - Outlook Anywhere is not turned on for this profile<br /> end if<br /><br />next<br /><br />"************************Script End************************"Littlejohnhttp://www.blogger.com/profile/10557738738000892339noreply@blogger.com1tag:blogger.com,1999:blog-8673894117512667062.post-86107676962694290982009-08-04T12:13:00.000-07:002009-08-04T12:22:46.303-07:00Update 8/4Lots of things happening lately, it's been a while since the last update. <br /><br />Pictures are up on my Picasaweb from the Concan vacation. They had a huge rock that we jumped off of into the Frio River. Man it was awesome. However, I HATE sleeping in a tent in the Texas heat. I guess I'm no longer a country boy, I'm full blown city boy. I gotta find a cabin next time. :-)<br /><br />I've been working on the house. I got to use my cool tools (mitre saw, router, circular saw, electric planer, mini router, nail guns) while replacing all the interior doors in my house. I love my tools. They rock. Hopefully, we can get the house ready to sell so we can move into a bigger house. <br /><br />Been working on some software for Citrix. I've actually wrote it all in VBScript about 5 years ago. I've since re-written it all in C# and making it ASP.Net and Service based. Hopefully I can get it perfected and start distributing it. We will see, that's a looong road.<br /><br />Football has officially started. Boys started their football practices, 6 times a week for the first 3 weeks. It actually started last week, shorts and cleats only. They strapped on the pads yesterday and had their first full day of hitting. We get to scrimmage League City next Saturday. So we are prepping for the long season. It's gonna be a good one!! Keep an eye on my Picasaweb page, I will be posting pictures when the games start.<br /><br />Marching practice has started. My 2 younger ones are playing youth football, but my oldest is starting his first year (freshman) of Friendswood Mighty Mustang Marching Band this year. His first practice was yesterday and they went from 12-9. WHEW! Funny thing though, his band big brothers came and woke him up at 5 AM yesterday with a whistle and a horn. Scared the crap out of him, he screamed like a little girl, that was funny as heck!! Wish I would have videotaped that. Oh well, it was funny. Now the serious band stuff starts.<br /><br />Go Colts and Go Mustangs!!Littlejohnhttp://www.blogger.com/profile/10557738738000892339noreply@blogger.com0tag:blogger.com,1999:blog-8673894117512667062.post-73899841399971701292009-06-22T08:25:00.000-07:002009-06-22T08:29:46.322-07:00Yall be goin on vacation?Remember that? I still have that clip somewhere, Delta Airlines, it's still funny as all get out. Anyhow, I can't wait for Friday.<br /><br />My wife and I are heading out to <a href="http://maps.google.com/maps?source=ig&hl=en&rlz=1G1GGLQ_ENUS297&q=concan+texas&um=1&ie=UTF-8&split=0&gl=us&ei=qaI_So38I6S1twf4x70K&sa=X&oi=geocode_result&ct=title&resnum=1">Concan, TX</a>. My parents are taking the kiddos tomorrow, my wife and I are meeting them out there Friday. We will be staying over the weekend and then coming home on Monday. Hopefully we can get to Schlitterbahn again. We went there last year and I think I had more fun than them kids, haha! Nah, it was awesome though. I should have some pictures up next week. <br /><br />Well, until next time, see ya, and HURRY UP FRIDAY!!Littlejohnhttp://www.blogger.com/profile/10557738738000892339noreply@blogger.com0tag:blogger.com,1999:blog-8673894117512667062.post-12144622456180063282009-06-11T15:07:00.000-07:002009-06-11T15:15:50.878-07:00X-FilesI love the X-Files, have been a huge fan since 1996 or so. Up to about a year ago, I had seen almost every episode up to the first Movie, X-Files Fight The Future. Well I sought to change that and I bought seasons 6, 7, 8, and 9. I pretty much watched seasons 6-8 in about 2 months. Then I started watching season 9 and got to the last episode (THE LAST EPISODE!!). I think I last watched it in November or December 2008 on a business trip to Montreal. Then my laptop battery died and I couldn't finish it. I was just so busy, I never finished it. That is until last night. I finally sat down and watched it. It ended pretty much how I expected. Geez, I wish they were still on the air. Now that I've finally finished the seasons, I'm going to watch the new movie X-Files - I Want To Believe. <br /><br />Anybody remember where the phrase "I want to believe" came from?Littlejohnhttp://www.blogger.com/profile/10557738738000892339noreply@blogger.com0tag:blogger.com,1999:blog-8673894117512667062.post-29516359546123113512009-06-08T12:35:00.000-07:002009-06-08T13:18:00.444-07:00Using NTDSUTIL to Seize FSMO RolesOk, here's the scenario.<br /><br />You have 3 domain controllers, <em>single </em>domain, lets call them DC01, DC02, and DC03.<br />The FSMO roles are setup this way:<br />DC01 (GC) - RID, PDC, Infrastructure<br />DC02 (GC)- Schema Master, Domain Naming Master<br />DC03 (NON GC) - No roles assigned<br /><br />Then one day, DC02 decides to go on permanent vacation for whatever reason. Power supplies died, 2 RAID 5 hard drives died, somebody spills coke all over your server, etc.<br /><br />Now you have this scenario, 2 live DC's 1 non live DC. You have a server that has 2 FSMO roles on it. Not good. Meaning if you try to change the schema with ADSIEDIT.MSC, you will get an error. If you try to add a new domain to your forest, you will get an error. Not good...not REAL bad, but not a good situation to be in.<br /><br />Not so fast there, here's how you fix it.<br /><br /><strong>Lets cleanup, do this from DC01, or DC02</strong><br /><br /><ul><li>Remove the replication links to and from this server in AD Sites and Services </li><li>Remove the GC functionality from this server in AD Sites and Services </li><li>Force remove DC02 from AD Users and Computers. Tell it "yes this DC is no longer functional, whatever..." </li><li>Remove the NTDS settings node from AD Sites and Services </li><li>Remove the DC02 Server Node from the site, if you get prompted tell it "yes this DC is no longer function, whatever...again" </li></ul><p><br />**If you run into any problems doing these, then you may have to get into ADSIEDIT.msc and manually make some changes. I would suggest you try to test these out before doing any of this in a production environment.**<br /><br /><strong>Now we have to seize the roles (in this case Schema and Domain Naming Master)</strong> </p><ul><li>Make sure your account is part of Schema Admins. - otherwise you will get an "access denied"</li><li>Get on a server, open up a command line.</li><li>Run NTDSUTIL</li><li>type "roles" - at the ntdsutil: prompt</li><li>type "connections" - at the fsmo maintenance: prompt</li><li>type "connect to server %servername%" - sub an active DC name for the %servername% (dc03) - this is for the server that you want to be the new FSMO role masters.</li><li>type "q" - to get back to the fsmo maintenance: prompt.</li><li>type "seize domain naming master" - to seize the domain naming master role</li><li>type "seize schema master" - to seize the schema master role</li></ul><br />**If you get any errors running these, you will have to investigate the error and find out why. The error I had was an access denied error. Put my account in Schema Admins and logged out/in and it worked.<br /><strong></strong><br /><strong>Verification and Testing:</strong><br /><br /><br /><ul><li>Make sure all the Operations Masters are correct.</li><li>-RID, PDC, and Infrastructure - Use AD Users and Computers</li><li>-Schema Master - Use schmmgmt.msc </li><li>-Domain Naming Master - Use AD Domains and Trusts</li><li>Check replication - Replication Monitor</li><li>Check your event log and make sure you're no longer getting the 2091 errors in the </li><li>Directory Service. You might have to wait a while.</li></ul><p><a href="http://support.microsoft.com/kb/255504">http://support.microsoft.com/kb/255504</a></p>This is basically what I did this past weekend. Other than that, it was all good, pretty simple and straight forward. Hope this helps.Littlejohnhttp://www.blogger.com/profile/10557738738000892339noreply@blogger.com0tag:blogger.com,1999:blog-8673894117512667062.post-25203631109579861462009-06-05T11:05:00.000-07:002009-06-08T13:18:42.194-07:00Recent MoviesOk, I'm not a real big movie fan, but my wife and I have watched about 4 movies in the past 5 days. Here they are and my thoughts.<br /><br /><br /><strong>Drag Me to Hell</strong><br /><a href="http://www.imdb.com/title/tt1127180/">http://www.imdb.com/title/tt1127180/</a><br />Not like gory-scary, but more like things popping out at you scary. I screamed like a little girl at one point, I'll admit. I've never seen Evil Dead 2, but according to my wife, this was very similar as far as the type. I thought overall it was a good film, it was a kind of silly but yet scary with a pretty good storyline. I'd recommend it, but don't expect Friday the 13th kind of horror.<br /><br /><br /><strong>Tropic Thunder</strong><br /><a href="http://www.imdb.com/title/tt0942385/">http://www.imdb.com/title/tt0942385/</a><br />Well, I think this was hyped up a little too much for me. I didn't really read the cover so the whole actors doing a movie in the movie was a little suprise for me. From there, it was just bits and pieces of humor. I will say that Robert Downey plays one hell of a old school brotha. He kinda made me think that's what Ving Rhames would sound like in that role playing himself. It was pretty good. That was easily the best part of the movie. Maybe I missed something, maybe it was hyped up too much for me, but I've seen and laughed harder at other movies.<br /><br /><strong>Pineapple Express</strong><br /><a href="http://www.imdb.com/title/tt0910936/">http://www.imdb.com/title/tt0910936/</a><br />Lots of smokin goin on in this movie if you know what I mean. It was ok. Again, another movie I thought I may have read too much hype on. It was funny, but some of that dumb college mary jane goofy humor. Not was I was expecting. Seth Rogen played perfectly into his role in this movie. However, seeing Harry from Spider Man (James Franco) in that part was really wild. That was surely a different side, and yet he was pretty good.<br /><br /><strong>The Number 23</strong><br /><a href="http://www.imdb.com/title/tt0481369/">http://www.imdb.com/title/tt0481369/</a><br />I love Jim Carrey, I've always thought he was a great actor and had great sense of humor. Liar Liar was probably the funniest movie he's done, though Ace Ventura was really good too (part 1, not part 2, 3, 4, 5, or 6). Anyhow, this was surely a brain trip. Right when you think you have it figured out, or even if you're on the verge of still being confused, it takes a quick right turn and you're like "WOW, didn't expect that!". I liked it, check it out.<br /><br />This concludes the movie review list for today. Hopefully I'll have some more reviews for you coming up soon.Littlejohnhttp://www.blogger.com/profile/10557738738000892339noreply@blogger.com0tag:blogger.com,1999:blog-8673894117512667062.post-80745931128979654692009-06-04T09:14:00.000-07:002009-06-04T09:39:41.468-07:00Intro - First BlogHowdy, this is my first blog. You'd think that being a tech guy, I would have done this a long time ago. Well, consider it done.<br /><br />Well I chose Speed of Light as my Blog Title because it seems everything is moving so fast. I have 3 boys, seems like only yesterday they were in diapers. Now, my oldest is starting his first year in High School and will be in the Marching Band and golf. My younger two are both going to be in intermediate school together (4th and 5th) and playing youth football. Geez, time flies. So now you get an idea of what Speed of Light means to me.Littlejohnhttp://www.blogger.com/profile/10557738738000892339noreply@blogger.com0