tag:blogger.com,1999:blog-79438351189792947712024-03-27T02:37:58.420-04:00Kayser's Tech NotesStuff I discovered or figured out that I think
others may benefit from also.Brian Kayserhttp://www.blogger.com/profile/14553812295322745265noreply@blogger.comBlogger23125tag:blogger.com,1999:blog-7943835118979294771.post-52665531516184239452016-11-08T16:38:00.001-05:002016-11-09T07:25:53.035-05:00Provisioning Cisco 7940, 7941, 7942, 7960, 7961, and 7962 IP Phones in 3CX<h3 style="text-align: justify;">
I am working on a configuration guide for the Cisco 7940, 7941, 7942, 7960, 7961, and 7962 IP Phones, including templates that work in 3CX version 14 and 15. </h3>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
These Cisco phones are really just marginally supported in 3CX, which is too bad, because they are good solid phones and there is a huge inventory of them still floating around. For those of us that are moving away from the expense of Cisco Call Manager, it saves a ton of upfront costs by repurposing these phones with 3CX. If you are starting from scratch, I don’t necessarily recommend purchasing these phones; although they are basically a “dime a dozen” on eBay which could get a money strapped company into VoIP on the cheap. </div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
This guide will help you implement these Cisco phones way beyond what 3CX offers out of the “box.” In fact, you can’t even get them to work with the default installation of 3CX because there is no TFTP service and the provisioning templates are flawed. </div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
The biggest issues with these phones are that they need to be converted to SIP mode, they still need to get configuration files via TFTP which isn't included in 3CX, and they don't have BLF's. In fact with the 79x0 phones you can't even program the buttons for speed dials via 3CX. </div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
This guide will step you through the whole process and give you much more advanced provisioning templates that <i>will</i> allow you to configure the line buttons as alternate line appearances (like in Call Manager), and will allow you to use a Session Border Controller (SBC) proxy if needed as the phones don't support STUN. </div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
I will be selling this guide for $49, but believe me, if you don't have a clue on what to do this will save you and your company hours and hours of time literally, and get you ahead of the game with a much more powerful provisioning template. If you were to hire a consultant (at say $150 an hour) it would take them a minimum of an hour to get this working for you, and that's only if they had done this before. If they are not familiar with the process you could end up paying $1000 for them to figure it out for you. I've done the research for you (and battle tested it with over 200 phones) and now it will be compiled in this guide which will tell you exactly what you need to do and provide you with my own custom provisioning templates that actually work. </div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
If you are reading this and want it NOW, comment below so I'll know if there is any demand. Then I'll hurry up and finish it! </div>
<div>
<div style="text-align: justify;">
<br /></div>
</div>
<div class="blogger-post-footer">***End***</div>Brian Kayserhttp://www.blogger.com/profile/14553812295322745265noreply@blogger.com6tag:blogger.com,1999:blog-7943835118979294771.post-72096376594814478382016-02-16T10:57:00.000-05:002016-02-18T14:21:41.763-05:00Vendor warning: LOGICnow - they own MAXfocus / MAXMailI hate posting something like this but LOGICnow spurned me as a customer and hopefully I can help out some of my IT Peers to avoid them. <br />
<br />
I'll try to keep this review short. <br />
<br />
Technically we were an almost 6 year customer of their anti-spam product called MAXMail. Due to what I would consider "failure to perform" on their end, I decided we needed to find a new solution. Issues such as long delivery delays (over an hour at times), some of our business partners could not get any email through them (to us) at all and we had to setup special email routes to bypass the service, the web interface was clunky and would error out ALL THE TIME, plus the service really didn't do a great job of filtering spam. <br />
<br />
The construction company I work for actually acquired another construction company down south and they used MAX Mail since May of 2010. We were unhappy with our in-house product and wanted to switch so we thought we'd try MAXMail as the company we acquired seemed happy with it. Instead of monthly payments I negotiated a better rate with them if we paid annually, so I paid up front for 1 year. Almost instantly I was not happy with the obvious spam they let through (even at max aggressiveness) and then the intermittent long delays would happen a few times a week. These long delays were killers, then coupled with the other issues I already mentioned I decided we had to switch. <br />
<br />
So we just recently went with a Barracuda appliance and so far I am much happier!!<br />
<br />
But then when I tried to contact my LOGICnow rep to inform her to cancel our service and I would expect a refund on the remaining 6-months of service, they eventually (after days of trying to even get a response) was told... well, here is the response:<br />
<br />
<blockquote class="tr_bq">
Subscriptions are non-refundable, so I will not be able to honor your request. Even on the monthly billing option, which you declined, I would not be able to refund “unused time” if, for example, a customer cancelled on the 15th of the month. Again, I am sorry to hear that you have been dissatisfied with the service, especially given that the <i>XXXXXX</i> domain has been with us since May 2010. </blockquote>
<br />
Well, even though I figure they owe us about $1,700, I've got better things to do than squabble over this as I doubt I will get anywhere with them. So I hope that at the very least I cost LOGICnow more that 10 times that amount in steering people away from them. I responded to her that I was disappointed in LOGICnow's unwillingness to work on a graceful exit for a 6 year customer, especially since it wasn't like we decided to switch for no reason.<br />
<br />
I could go on and on about the issues, such as having to setup local rules to catch the spam they let through, technical support actually trying to convince me that the long delays were not them and must be our senders (like the whole world) and there was nothing they could do, etc.... but I think this is long enough. If anyone sees this and has any questions or comments please add them and I'll try my best to respond. <br />
<br />
I didn't try these other products, but as the parent company is LOGICnow I would think twice about them as well. <br />
<br />
MAXfocus<br />
MAX RemoteManagement<br />
MAX Mail<br />
MAX ServiceDesk<br />
MailProtection<br />
<br />
BTW - I wrote the above a few weeks ago but figured before posting it I would contact Mr. Alistair Forbes, LogicNow's General Manager. I sent two emails and got no reply, even though in an email he wrote below he gave his info to contact him. So judge for yourself if this is a company you want to do business with. Obviously they finally acknowledged an issue, but were not willing to make it right by me.<br />
<br />
The email --- <br />
<br />
<table border="0" cellpadding="0" cellspacing="0" class="MsoNormalTable" style="mso-cellspacing: 0in; mso-padding-alt: 0in 0in 0in 0in; mso-yfti-tbllook: 1184; width: 600px;">
<tbody>
<tr>
<td style="padding: 0in 15.0pt 0in 0in; width: .3pt;" width="0"><div style="line-height: 15.75pt; margin-bottom: .0001pt; margin: 0in;">
<span style="color: #666666; font-family: "arial" , "sans-serif"; font-size: 10.5pt;">December
01, 2015<o:p></o:p></span></div>
<div style="line-height: 15.75pt; margin-bottom: .0001pt; margin: 0in;">
<br /></div>
<div style="line-height: 15.75pt; margin-bottom: .0001pt; margin: 0in;">
<span style="color: #666666; font-family: "arial" , "sans-serif"; font-size: 10.5pt;">At
LogicNow, we are passionate about helping our customers win through
technology. It’s a mission we take seriously and recent issues with our mail
services are not in alignment with this objective. We understand that
businesses rely on timely delivery of their email, and we understand the very
significant impact that message delays can have on our partners and
customers. We sincerely apologize to those who were affected by these issues
and we have restored the level of reliability that our partners and customers
are accustomed to and deserve. <o:p></o:p></span></div>
<div style="margin-bottom: .0001pt; margin: 0in;">
<span style="font-family: "arial" , "sans-serif"; font-size: 10.5pt;"> <o:p></o:p></span></div>
<div style="line-height: 15.75pt; margin-bottom: .0001pt; margin: 0in;">
<span style="color: #666666; font-family: "arial" , "sans-serif"; font-size: 10.5pt;">We
have been working diligently to quickly remediate and understand the causes
of any service disruptions, and have resolved three primary causes. First, we
have deployed additional servers to handle the increased load of emails.
Second, we have resolved Office 365 delivery snags which arose from changes
made by Microsoft and impacted a small subset of customers, and have secured
a commitment from Microsoft for improved communications going forward to help
avoid future potential issues. Finally, we experienced an unforeseen issue
with the Cyren malware detection tool when they released an updated
anti-virus engine that proved to be slow in its response times, impacting
service delivery; we have since removed the problem sub-component from our
mix while we work to resolve this with Cyren. In the meantime, we maintain
robust antivirus support that will help us continue to effectively protect
our customers against email-borne threats; as part of this we recently introduced
file-based attachment blocking as an additional technique to ensure our
malware protection is at the highest level.<o:p></o:p></span></div>
<div style="line-height: 15.75pt; margin-bottom: .0001pt; margin: 0in;">
<br /></div>
<div style="line-height: 15.75pt; margin-bottom: .0001pt; margin: 0in;">
<span style="color: #666666; font-family: "arial" , "sans-serif"; font-size: 10.5pt;">We
hope that these details are helpful but realize that in our customers’ eyes,
no matter how quickly we resolve these issues, your overall satisfaction is
determined by your experience of using our services and we clearly need to do
better going forward. We have put in place specific measures to help ensure
that we do not experience these types of disruptions in the future, and are
committed to delivering the level of service excellence you have come to
expect from LogicNow. <o:p></o:p></span></div>
<div style="margin-bottom: .0001pt; margin: 0in;">
<span style="font-family: "arial" , "sans-serif"; font-size: 10.5pt;"> <o:p></o:p></span></div>
<div style="line-height: 15.75pt; margin-bottom: .0001pt; margin: 0in;">
<span style="color: #666666; font-family: "arial" , "sans-serif"; font-size: 10.5pt;">If
you have any questions regarding these issues, please let me know. You may
reach me directly at <a href="mailto:Alistair.Forbes@logicnow.com?subject=Mail%20Letter%20-%20December%202015"><b><span style="color: #0079c1; text-decoration: none;">Alistair.Forbes@logicnow.com</span></b></a>.
<o:p></o:p></span></div>
<div style="line-height: 15.75pt; margin-bottom: .0001pt; margin: 0in;">
<br /></div>
<div style="line-height: 15.75pt; margin-bottom: .0001pt; margin: 0in;">
<span style="color: #666666; font-family: "arial" , "sans-serif"; font-size: 10.5pt;">We
appreciate your patience and understanding as we work to continually improve
our service.<o:p></o:p></span></div>
<div style="margin-bottom: .0001pt; margin: 0in;">
<span style="font-family: "arial" , "sans-serif"; font-size: 10.5pt;"> <o:p></o:p></span></div>
<div style="line-height: 15.75pt; margin-bottom: .0001pt; margin: 0in;">
<span style="color: #666666; font-family: "arial" , "sans-serif"; font-size: 10.5pt;">Again,
our apologies.<o:p></o:p></span></div>
<div style="line-height: 15.75pt; margin-bottom: .0001pt; margin: 0in;">
<span style="color: #666666; font-family: "arial" , "sans-serif"; font-size: 10.5pt;"><br /></span></div>
</td>
</tr>
</tbody></table>
<div class="MsoNormal">
<br /></div>
<table border="0" cellpadding="0" cellspacing="0" class="MsoNormalTable" style="mso-cellspacing: 0in; mso-padding-alt: 0in 0in 0in 0in; mso-yfti-tbllook: 1184; width: 600px;"><tbody>
<tr style="mso-yfti-firstrow: yes; mso-yfti-irow: 0; mso-yfti-lastrow: yes;"><td style="padding: 0in 15.0pt 0in 0in; width: .3pt;" width="0"><div style="line-height: 15.75pt; margin-bottom: .0001pt; margin: 0in;">
<span style="color: #666666; font-family: "arial" , "sans-serif"; font-size: 10.5pt;">Sincerely,<o:p></o:p></span></div>
<div style="margin-bottom: .0001pt; margin: 0in;">
<br /></div>
<div style="line-height: 15.75pt; margin-bottom: .0001pt; margin: 0in;">
<b><span style="color: #666666; font-family: "arial" , "sans-serif"; font-size: 10.5pt;">Alistair
Forbes</span></b><span style="color: #666666; font-family: "arial" , "sans-serif"; font-size: 10.5pt;"><o:p></o:p></span></div>
<div style="line-height: 15.75pt; margin-bottom: .0001pt; margin: 0in;">
<b><span style="color: #666666; font-family: "arial" , "sans-serif"; font-size: 10.5pt;">General
Manager, LogicNow</span></b><span style="color: #666666; font-family: "arial" , "sans-serif"; font-size: 10.5pt;"><o:p></o:p></span></div>
<div style="line-height: 15.75pt; margin-bottom: .0001pt; margin: 0in;">
<span style="color: #666666; font-family: "arial" , "sans-serif"; font-size: 10.5pt;"><a href="mailto:Alistair.Forbes@logicnow.com?subject=Mail%20Letter%20-%20December%202015"><b><span style="color: #0079c1; text-decoration: none;">Alistair.Forbes@logicnow.com</span></b></a><o:p></o:p></span></div>
</td>
</tr>
</tbody></table>
<div>
<br /></div>
<br /><div class="blogger-post-footer">***End***</div>Brian Kayserhttp://www.blogger.com/profile/14553812295322745265noreply@blogger.com11tag:blogger.com,1999:blog-7943835118979294771.post-34161357747300524152016-01-07T14:38:00.002-05:002016-01-07T14:39:22.051-05:00Lifesize Room / Team 220 Video SnapshotsIf you have a Lifesize video conference unit, specifically the Lifesize Room 220 or the Lifesize Team 220, then you may know that in the Call Manager tab you can see a video snapshot preview from the camera. I honestly don't know how often it grabs a frame but it is around every 15 - 30 seconds, whether or not a conference is active. As an IT administrator this is helpful for maintenance and even troubleshooting!<br />
<br />
For maintenance, it is nice to be able to pop into the web interface and just make sure no one is in the room before running up or down stairs. It's no fun to run up to a meeting room only to find someone using it. I suppose it may help out your FitBit stats but sometimes you don't have time to waste.<br />
<br />
For troubleshooting, it is nice to be able to see at least a glimpse of what they see on their screen(s), especially if they are in a different city. While you don't see the live video stream, you can at least see what's there every 15 or so seconds. <br />
<br />
This should be on by default. If not, the setting is in Preferences -> Video -> Video Control. Enable "Video Snapshots." This will then show the little preview and actually even let you save the frame to a JPG. <br />
<br />
Also, this seems to be undocumented issue, but this feature does not work if you have recording enabled (Preferences -> Video -> Record and Stream). I enabled it once while just playing around and it took me months to figure out why I lost the ability to view the video snapshots. I suppose it does this because in the call manager screen you also have the option to enable or disable Video Snapshots there (see the camera icon below). However, when recording is enabled they use this screen space for a record button. Who knew? Not many, and this is actually the reason for this quick blog post; an undocumented "thingy."<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgxAVtzbQQO8-kKZiYCKlM4x9PI6S814t9Zp4IDSyRL9MI8YiVyUE0CtRDpQf4quY4ncbGIPfufFbkYdvGW08Zo26gQNzNTQ3tXiha9yoqE45JwOPjeiYHOq63n6cFUItuP_POnxF0Q3XTD/s1600/Capture.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="328" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgxAVtzbQQO8-kKZiYCKlM4x9PI6S814t9Zp4IDSyRL9MI8YiVyUE0CtRDpQf4quY4ncbGIPfufFbkYdvGW08Zo26gQNzNTQ3tXiha9yoqE45JwOPjeiYHOq63n6cFUItuP_POnxF0Q3XTD/s640/Capture.PNG" width="640" /></a></div>
<br />
This may also apply to the Lifesize Room 200 and the Lifesize Team 200, I'm not sure as I don't have those older units. This feature does not exist in the Lifesize Passport units or the newer Lifesize Icon 400 or Icon 600 units.<br />
<br />
<br /><div class="blogger-post-footer">***End***</div>Brian Kayserhttp://www.blogger.com/profile/14553812295322745265noreply@blogger.com2tag:blogger.com,1999:blog-7943835118979294771.post-14740139216536864982015-10-27T08:13:00.001-04:002015-10-27T08:22:37.321-04:00Outlook Email Travel Time Report<br />
<ul>
<li><span style="font-size: large;">Do you know how long an email takes to get to you? </span></li>
<li><span style="font-size: large;">How long from the sender clicking [SEND] until it comes to rest in your inbox? </span></li>
<li><span style="font-size: large;">Is there a problem with your email provider?</span></li>
<li><span style="font-size: large;">Is there a problem with your hosted SPAM provider - are they adding a delay? </span></li>
</ul>
<br />
<br />
<i>{This information applies to the Microsoft Outlook email client. Specifically I'm using Outlook 2013}</i><br />
<br />
If you are asking yourself any of these questions you can look at the "Received" time in your inbox, then open the email and compare it to the "Sent" time that it usually displays once open. But if you are constantly having issues you may want a better faster way to look at a lot of emails quickly, you can do this with a Macro. <br />
<br />
I'm not going to dive into what macro's are; if you have no clue then do a search (<a href="https://www.google.com/webhp?sourceid=chrome-instant&ion=1&espv=2&ie=UTF-8&safe=active&ssui=on#q=how+to+use+outlook+macros&safe=active&tbs=qdr:y" target="_blank">Search Google "How to use Outlook macros"</a> or <a href="http://www.slipstick.com/developer/how-to-use-outlooks-vba-editor/" target="_blank">Here is a fine article on how to get started.</a> I just want to share the macro and I'll give you the quick and dirty steps to get it installed. <br />
<br />
<b>What does the macro do?</b><br />
This macro will produce a report of all messages that you have highlighted in your inbox. Simply highlight the email messages you want to get a report of sent-and-received times and a new email window will open and show the results. Here is a sample:<br />
<br />
<div class="MsoPlainText">
<span style="font-size: x-small;">Subject: Critical
Alert for your ProLiant Servers and Options<o:p></o:p></span></div>
<div class="MsoPlainText">
<span style="font-size: x-small;">From: alerts@alerts.hp.com<o:p></o:p></span></div>
<div class="MsoPlainText">
<span style="font-size: x-small;">Sent on: 10/26/2015
6:45:12 PM<o:p></o:p></span></div>
<div class="MsoPlainText">
<span style="font-size: x-small;">ReceivedTime: 10/26/2015
7:50:38 PM<o:p></o:p></span></div>
<div class="MsoPlainText">
<span style="font-size: x-small;">Limbo Time: 65
Minutes 26 Seconds<o:p></o:p></span></div>
<div class="MsoPlainText">
<span style="font-size: x-small;">X-Katharion-ID: 144590403.16557.cal1-mh778 (0.0)<o:p></o:p></span></div>
<div class="MsoPlainText">
<br /></div>
<div class="MsoPlainText">
<span style="font-size: x-small;">---------------<o:p></o:p></span></div>
<div class="MsoPlainText">
<br /></div>
<div class="MsoPlainText">
<br /></div>
<div class="MsoPlainText">
<span style="font-size: x-small;">Subject: Find
holiday items in high demand.<o:p></o:p></span></div>
<div class="MsoPlainText">
<span style="font-size: x-small;">From: eBay@reply1.ebay.com<o:p></o:p></span></div>
<div class="MsoPlainText">
<span style="font-size: x-small;">Sent on: 10/26/2015
2:50:30 PM<o:p></o:p></span></div>
<div class="MsoPlainText">
<span style="font-size: x-small;">ReceivedTime: 10/26/2015
2:51:33 PM<o:p></o:p></span></div>
<div class="MsoPlainText">
<span style="font-size: x-small;">Limbo Time: 1
Minutes 3 Seconds<o:p></o:p></span></div>
<div class="MsoPlainText">
<span style="font-size: x-small;">X-Katharion-ID: 144588430.36058.cal1-mh782 (0.0)<o:p></o:p></span></div>
<div class="MsoPlainText">
<br /></div>
<div class="MsoPlainText">
<span style="font-size: x-small;">---------------<o:p></o:p></span></div>
<div class="MsoPlainText">
<br /></div>
<div class="MsoPlainText">
<br /></div>
<div class="MsoPlainText">
<span style="font-size: x-small;">Subject: Join
me at the Inaugural AerospaceDefenseChain Conference<o:p></o:p></span></div>
<div class="MsoPlainText">
<span style="font-size: x-small;">From: AviationWeek@info.aviationweek.com<o:p></o:p></span></div>
<div class="MsoPlainText">
<span style="font-size: x-small;">Sent on: 10/26/2015
2:07:53 PM<o:p></o:p></span></div>
<div class="MsoPlainText">
<span style="font-size: x-small;">ReceivedTime: 10/26/2015
2:10:26 PM<o:p></o:p></span></div>
<div class="MsoPlainText">
<span style="font-size: x-small;">Limbo Time: 2
Minutes 33 Seconds<o:p></o:p></span></div>
<div class="MsoPlainText">
<span style="font-size: x-small;">X-Katharion-ID: 144582874.74400.ams1-mh928 (0.0)</span><o:p></o:p></div>
<br />
<div class="MsoPlainText">
<br /></div>
This report will be shown in a new email form - simply because it is a quick and easy way to do it. You can cut and paste it to Word or something if you want to print it, or you can quickly send it to someone via the email. What I'm calling "Limbo Time" is the difference of "Sent on" and "Received Time." If you want more info on where the delay happened you will want to checkout the email header. <br />
<br />
For me, we use MaxMail / MaxFocus from LogicNow for Spam filtering (used to be GFI) and they were introducing a long delay in us getting our email. Sometimes more than an hour, so I needed a quick way to keep an eye on the problem. The X-Katharion-ID tag that I include in the report is what they use for message tracking, so I included it so I can send them this info and ask "What's up with the delay today?" If you don't need that simply remove it from the script.<br />
<br />
Most of the base code I scrounged from the Internet and then I added some math and some string operations. There is a function to get the email header that I didn't touch so I give credit to the original author on that one. I'm a programmer (Cobol) from days long gone so I don't pretend to know exactly what and how this works and I'm sure there may be better and more efficient way to code it, but hey; it works. <br />
<br />
When in Outlook press ALT-F11 to open the "Microsoft Visual Basic for Applications" windows. Then paste this into the "Module 1" section or I think you can create a new one - I really don't know. I put mine in Module-1. <br />
<br />
<span style="font-family: Courier New, Courier, monospace; font-size: x-small;">Sub SendReceiveTimes()</span><br />
<span style="font-family: Courier New, Courier, monospace; font-size: x-small;"> Dim olItem As Outlook.MailItem, olMsg As Outlook.MailItem</span><br />
<span style="font-family: Courier New, Courier, monospace; font-size: x-small;"> Dim strheader As String</span><br />
<span style="font-family: Courier New, Courier, monospace; font-size: x-small;"> Dim xPos1 As Integer</span><br />
<span style="font-family: Courier New, Courier, monospace; font-size: x-small;"> </span><br />
<span style="font-family: Courier New, Courier, monospace; font-size: x-small;"> For Each olItem In Application.ActiveExplorer.Selection</span><br />
<span style="font-family: Courier New, Courier, monospace; font-size: x-small;"> If Left(olItem.SenderEmailAddress, 2) = "/O" Then</span><br />
<span style="font-family: Courier New, Courier, monospace; font-size: x-small;"> Else</span><br />
<span style="font-family: Courier New, Courier, monospace; font-size: x-small;"> strheader = GetInetHeaders(olItem)</span><br />
<span style="font-family: Courier New, Courier, monospace; font-size: x-small;"> xPos1 = InStr(strheader, "X-Katharion-ID")</span><br />
<span style="font-family: Courier New, Courier, monospace; font-size: x-small;"> xPos2 = InStr(strheader, "Return-Path:")</span><br />
<span style="font-family: Courier New, Courier, monospace; font-size: x-small;"> xDiff = xPos2 - xPos1</span><br />
<span style="font-family: Courier New, Courier, monospace; font-size: x-small;"> If xPos1 > 5 Then</span><br />
<span style="font-family: Courier New, Courier, monospace; font-size: x-small;"> XKID = Mid(strheader, xPos1, xDiff)</span><br />
<span style="font-family: Courier New, Courier, monospace; font-size: x-small;"> Else</span><br />
<span style="font-family: Courier New, Courier, monospace; font-size: x-small;"> XKID = "X-Katharion-ID: -none-"</span><br />
<span style="font-family: Courier New, Courier, monospace; font-size: x-small;"> End If</span><br />
<span style="font-family: Courier New, Courier, monospace; font-size: x-small;"> </span><br />
<span style="font-family: Courier New, Courier, monospace; font-size: x-small;"> xBody = xBody & Chr(13) & "Subject: " & Chr(9) & olItem.Subject & Chr(13) & "From: " & Chr(9) & Chr(9) & olItem.SenderEmailAddress</span><br />
<span style="font-family: Courier New, Courier, monospace; font-size: x-small;"> xBody = xBody & Chr(13) & "Sent on: " & Chr(9) & olItem.SentOn</span><br />
<span style="font-family: Courier New, Courier, monospace; font-size: x-small;"> xBody = xBody & Chr(13) & "ReceivedTime: " & Chr(9) & olItem.ReceivedTime</span><br />
<span style="font-family: Courier New, Courier, monospace; font-size: x-small;"> </span><br />
<span style="font-family: Courier New, Courier, monospace; font-size: x-small;"> xLTs = DateDiff("s", olItem.SentOn, olItem.ReceivedTime)</span><br />
<span style="font-family: Courier New, Courier, monospace; font-size: x-small;"> xLT = Int(xLTs / 60)</span><br />
<span style="font-family: Courier New, Courier, monospace; font-size: x-small;"> xLTs = xLTs - (xLT * 60)</span><br />
<span style="font-family: Courier New, Courier, monospace; font-size: x-small;"> xBody = xBody & Chr(13) & "Limbo Time: " & Chr(9) & xLT & " Minutes " & xLTs & " Seconds"</span><br />
<span style="font-family: Courier New, Courier, monospace; font-size: x-small;"> </span><br />
<span style="font-family: Courier New, Courier, monospace; font-size: x-small;"> xBody = xBody & Chr(13) & XKID</span><br />
<span style="font-family: Courier New, Courier, monospace; font-size: x-small;"> xBody = xBody & Chr(13) & "---------------" & Chr(13) & Chr(13)</span><br />
<span style="font-family: Courier New, Courier, monospace; font-size: x-small;"> End If</span><br />
<span style="font-family: Courier New, Courier, monospace; font-size: x-small;"> Next</span><br />
<span style="font-family: Courier New, Courier, monospace; font-size: x-small;"> </span><br />
<span style="font-family: Courier New, Courier, monospace; font-size: x-small;"> Set olMsg = Application.CreateItem(olMailItem)</span><br />
<span style="font-family: Courier New, Courier, monospace; font-size: x-small;"> With olMsg</span><br />
<span style="font-family: Courier New, Courier, monospace; font-size: x-small;"> .BodyFormat = olFormatPlain</span><br />
<span style="font-family: Courier New, Courier, monospace; font-size: x-small;"> .Body = xBody</span><br />
<span style="font-family: Courier New, Courier, monospace; font-size: x-small;"> .Display</span><br />
<span style="font-family: Courier New, Courier, monospace; font-size: x-small;"> End With</span><br />
<span style="font-family: Courier New, Courier, monospace; font-size: x-small;"> Set olMsg = Nothing</span><br />
<span style="font-family: Courier New, Courier, monospace; font-size: x-small;">End Sub</span><br />
<span style="font-family: Courier New, Courier, monospace; font-size: x-small;"><br /></span>
<span style="font-family: Courier New, Courier, monospace; font-size: x-small;">Function GetInetHeaders(olkMsg As Outlook.MailItem) As String</span><br />
<span style="font-family: Courier New, Courier, monospace; font-size: x-small;"> ' Purpose: Returns the internet headers of a message.'</span><br />
<span style="font-family: Courier New, Courier, monospace; font-size: x-small;"> ' Written: 4/28/2009'</span><br />
<span style="font-family: Courier New, Courier, monospace; font-size: x-small;"> ' Author: BlueDevilFan'</span><br />
<span style="font-family: Courier New, Courier, monospace; font-size: x-small;"> ' http://techniclee.wordpress.com/</span><br />
<span style="font-family: Courier New, Courier, monospace; font-size: x-small;"> ' Outlook: 2007'</span><br />
<span style="font-family: Courier New, Courier, monospace; font-size: x-small;"> Const PR_TRANSPORT_MESSAGE_HEADERS = "http://schemas.microsoft.com/mapi/proptag/0x007D001E"</span><br />
<span style="font-family: Courier New, Courier, monospace; font-size: x-small;"> Dim olkPA As Outlook.PropertyAccessor</span><br />
<span style="font-family: Courier New, Courier, monospace; font-size: x-small;"> Set olkPA = olkMsg.PropertyAccessor</span><br />
<span style="font-family: Courier New, Courier, monospace; font-size: x-small;"> GetInetHeaders = olkPA.GetProperty(PR_TRANSPORT_MESSAGE_HEADERS)</span><br />
<span style="font-family: Courier New, Courier, monospace; font-size: x-small;"> Set olkPA = Nothing</span><br />
<span style="font-family: Courier New, Courier, monospace; font-size: x-small;"></span><br />
<span style="font-family: Courier New, Courier, monospace; font-size: x-small;">End Function</span><br />
<br />
<span style="font-family: Arial, Helvetica, sans-serif;">Now just highlight the emails that you want to create a report on and run the macro "SendReceiveTimes." I created a shortcut to it on my Quick Access Tool Bar so I can run a quick report anytime. </span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span>
<span style="font-family: Arial, Helvetica, sans-serif;"><b>A few things to know and a few issues to avoid. </b></span><br />
<br />
<ol>
<li><span style="font-family: Arial, Helvetica, sans-serif;">You can't include calendar invites - it will cause an error. Skip those. </span></li>
<li><span style="font-family: Arial, Helvetica, sans-serif;">This excludes internal messages. You can highlight them, but it skips them</span></li>
<li><span style="font-family: Arial, Helvetica, sans-serif;">You can't go crazy and highlight hundreds of messages, it will error out. Keep it to a few days. </span></li>
</ol>
<div>
<span style="background-color: white; color: #f3f3f3; font-size: xx-small;">report on send and receive times</span><br />
<span style="background-color: white; color: #f3f3f3; font-size: xx-small;">email delay report</span><br />
<span style="color: #f3f3f3; font-size: xx-small;"><span style="background-color: white;">long email delays</span></span><br />
<span style="color: #f3f3f3; font-size: xx-small;"><span style="background-color: white;">isp email delays</span></span><br />
<span style="color: #f3f3f3; font-size: xx-small;"><span style="background-color: white;">emails take a long time to deliver</span></span><br />
<span style="background-color: white; color: #f3f3f3; font-size: xx-small;">email header times</span><br />
<span style="background-color: white; color: #f3f3f3; font-size: xx-small;">email travel time</span></div>
<div class="blogger-post-footer">***End***</div>Brian Kayserhttp://www.blogger.com/profile/14553812295322745265noreply@blogger.com3tag:blogger.com,1999:blog-7943835118979294771.post-52604267723588995732015-04-23T11:46:00.001-04:002015-04-23T11:49:35.494-04:00Fix for - InstallScript Setup Launcher Unicode Has Stopped Working in Windows 2008 or Windows Server 2012If you have some software and they use the Flexera windows installer, you may get the error: "InstallScript Setup Launcher Unicode Has Stopped Working." If you look at additional data on the error you may see it say APPCRASH in ISSETUP.DLL with an error of c0000005.<br />
<br />
I searched high and low and there isn't much documented about it, at least nothing that fixed it for me on a Windows Server 2012 R2 XenApp server. <br />
<br />
I'll cut to the chase, the ultimate problem is that the stupid installer program crashes if it can't find the STARTUP folder in the All-Users menu. It doesn't even put anything in there, at least not the program I was installing, Modelogix. The more frustrating issue is that it doesn't tell you what the problem is, just the useless error code mentioned above. Err!! So I spent countless hours troubleshooting this. <br />
<br />
All the other solutions out there must only work in Windows 7 and below, not Windows 8 or Server 2012 and above.<br />
<br />
Other solutions say to manually create the following folders if they are missing:<br />
<span style="background-color: #fafafa; color: #333333; font-family: Arial, sans-serif; font-size: 13px;">1. C: > Users > ("Yourname" Windows account ) > My Documents</span><br />
<span style="background-color: #fafafa; color: #333333; font-family: Arial, sans-serif; font-size: 13px;">2. C: > Users > ("Yourname" Windows account ) > AppData > Local</span><br />
<span style="background-color: #fafafa; color: #333333; font-family: Arial, sans-serif; font-size: 13px;">3. C: > Users > ("Yourname" Windows account ) > AppData > Roaming > Microsoft > Windows > Start Menu > Programs > Startup</span><br />
<span style="background-color: #fafafa; color: #333333; font-family: Arial, sans-serif; font-size: 13px;">4. C: > Users > Default > Documents</span><br />
<span style="background-color: #fafafa; color: #333333; font-family: Arial, sans-serif; font-size: 13px;">5. C: > Users > Default > AppData > Roaming > Microsoft > Windows > Start Menu > Programs > Startup</span><br />
<span style="font-size: xx-small;">Source: <a href="https://community.flexerasoftware.com/showthread.php?207204-InstallScript-Setup-Launcher-Unicode-Has-Stopped-Working-%28Windows-message%29" target="_blank">https://community.flexerasoftware.com/showthread.php?207204-InstallScript-Setup-Launcher-Unicode-Has-Stopped-Working-%28Windows-message%29 </a></span><br />
<br />
The problem is that Windows 8 and Server 2012 don't use C:\USERS\DEFAULT for the all-users area any longer!! <br />
<br />
In Windows 8 and Server 2012 and above, they use the hidden root folder C:\PROGRAMDATA. To be 100% sure on your system type SET ALL from a command prompt; this will display the value for the ALLUSERSPROFILE system variable and will tell you the path. <br />
<br />
So for me, all I needed to do to fix the issue was to create the STARTUP folder in the following path: <b>C:\ProgramData\Microsoft\Windows\Start Menu\Programs </b><br />
<i>We had removed it as it wasn't used and I was trying to simplify the menu for our users.</i> This folder is hidden but you can manually type it into windows explorer, or change your settings to view hidden folders. <br />
<br />
Once I created it in there, tada, the stupid setup program would run. I believe Flexera may have fixed this bug but your software vendor may still be using this older version. <br />
<div>
<br /></div>
<div>
<br /></div>
<div>
Let me know if this helped YOU!! </div>
<div class="blogger-post-footer">***End***</div>Brian Kayserhttp://www.blogger.com/profile/14553812295322745265noreply@blogger.com27tag:blogger.com,1999:blog-7943835118979294771.post-75375336953478310032014-08-29T11:33:00.000-04:002014-08-29T11:34:19.668-04:00Windows Search Not Working<div class="MsoNormal" style="margin-bottom: 0.0001pt;">
<span style="font-family: "Times New Roman","serif"; font-size: 12.0pt; mso-fareast-font-family: "Times New Roman";">I was having a problem getting
Windows Search to work on a Windows 2012 R2 server and didn't find much help
out in Google-land. Most results for Windows Search or Indexing Service
was for desktop OS's also. <o:p></o:p></span></div>
<div class="MsoNormal" style="margin-bottom: 0.0001pt;">
<br /></div>
<div class="MsoNormal" style="margin-bottom: 0.0001pt;">
<b><span style="font-family: "Times New Roman","serif"; font-size: 12.0pt; mso-fareast-font-family: "Times New Roman";">Here was my scenario:</span></b><span style="font-family: "Times New Roman","serif"; font-size: 12.0pt; mso-fareast-font-family: "Times New Roman";"><o:p></o:p></span></div>
<ul type="disc">
<li class="MsoNormal"><span style="font-family: "Times New Roman","serif"; font-size: 13.5pt; mso-fareast-font-family: "Times New Roman";">I installed the Windows Search Feature on a Windows
2012 R2 server. <o:p></o:p></span></li>
<li class="MsoNormal"><span style="font-family: "Times New Roman","serif"; font-size: 13.5pt; mso-fareast-font-family: "Times New Roman";">In Control Panel -> Indexing Options, I added the
"Marketing" folder from a drive that is attached to the server,
plus a few other folders on a different drive. <o:p></o:p></span></li>
<li class="MsoNormal"><span style="font-family: "Times New Roman","serif"; font-size: 13.5pt; mso-fareast-font-family: "Times New Roman";">The "few others" seemed to work.
However, now on the Marketing folder, when you did a search,
all that would come up was "No items match your search."<o:p></o:p></span></li>
<li class="MsoNormal"><span style="font-family: "Times New Roman","serif"; font-size: 13.5pt; mso-fareast-font-family: "Times New Roman";">What's worse, you could no longer search the Marketing
folder at all, not even the slow non-indexed way. Everything would
turn up "No items match your search."<o:p></o:p></span></li>
<li class="MsoNormal"><span style="font-family: "Times New Roman","serif"; font-size: 13.5pt; mso-fareast-font-family: "Times New Roman";">Searching for help on the Internet was a bust. <o:p></o:p></span></li>
</ul>
<div class="MsoNormal" style="margin-bottom: 0.0001pt;">
<span style="font-family: 'Times New Roman', serif; font-size: 13.5pt;">I noticed Event ID 3036
in the Application log. There were some hits on that, but again not much
help on Google. The main thing that caught my attention in the log entry
though was "Crawl could not be completed on content source
<file:H:/Marketing/>." Then down lower in the details
it said "Access is denied". Ding-Ding! <o:p></o:p></span></div>
<div class="MsoNormal" style="margin-bottom: 0.0001pt;">
<br /></div>
<div class="MsoNormal" style="margin-bottom: 0.0001pt;">
<span style="font-family: 'Times New Roman', serif; font-size: 13.5pt;">I checked the security
on H: (a local hard drive) but that looked fine. However, when I looked
at the Marketing folder itself, the security was changed and inheritance was
taken away. This was so that Domain Users didn't have any sort of access
by default - only certain users have access to that folder. The issue was
that whoever setup the security (which might have been me) didn't put SYSTEM in
there with Full Control (or any rights at all in this case.) I added
SYSTEM in there with Full Control and applied; it took a while to propagate.
<o:p></o:p></span></div>
<div class="MsoNormal" style="margin-bottom: 0.0001pt;">
<br /></div>
<div class="MsoNormal" style="margin-bottom: 0.0001pt;">
<span style="font-family: 'Times New Roman', serif; font-size: 13.5pt;">Within a few minutes of
that change I noticed (within the Indexing Options control panel applet) that
indexing was chugging again and the documents count was going up. When done, indexing was working – yeah!! <o:p></o:p></span></div>
<div class="MsoNormal" style="margin-bottom: 0.0001pt;">
<br /></div>
<div class="MsoNormal" style="margin-bottom: 0.0001pt;">
<span style="font-family: 'Times New Roman', serif; font-size: 13.5pt;">So since there wasn’t
any solution that I could find when searching the Internet, I figured I’d toss
it on where to perhaps help the next guy! <o:p></o:p></span></div>
<div class="MsoNormal" style="margin-bottom: 0.0001pt;">
<br /></div>
<div class="MsoNormal" style="margin-bottom: 0.0001pt;">
<br /></div>
<div class="MsoNormal" style="margin-bottom: 0.0001pt;">
<span style="font-family: 'Times New Roman', serif; font-size: 13.5pt;">This was helpful too, so
I didn’t have to wait FOREVER for indexing to take place.<o:p></o:p></span></div>
<div class="MsoNormal" style="margin-bottom: 0.0001pt;">
<br /></div>
<div class="MsoNormal" style="margin-bottom: 0.0001pt;">
<b><span style="font-family: 'Times New Roman', serif; font-size: 13.5pt;">Make indexing run faster
(don't pause for user activity)</span></b><span style="font-family: 'Times New Roman', serif; font-size: 13.5pt;"><o:p></o:p></span></div>
<div class="MsoNormal" style="margin-bottom: 0.0001pt;">
<span style="font-family: 'Times New Roman', serif; font-size: 13.5pt;">Regedit ->
Computer\HKLM\SOFTWARE\Microsoft\Windows Search\UseLowPriorityConfiguration -
change to "0"<o:p></o:p></span></div>
<br />
<div class="MsoNormal">
<br /></div>
<div class="blogger-post-footer">***End***</div>Brian Kayserhttp://www.blogger.com/profile/14553812295322745265noreply@blogger.com2tag:blogger.com,1999:blog-7943835118979294771.post-18695506657995421492013-05-28T09:21:00.000-04:002013-05-28T09:21:21.828-04:00Trick to get huge audio book discounts<br />
Okay, this is a little off topic for this blog, but I think it is good information. I'm a reader and also SciFi author and I’ve just recently found that I love audio books. I figured they were for the hearing impaired or for workers with long commutes. My commute is only about 15 minutes to work. However, when working to produce the audio book for The Curse of Europa, I figured I should listen to an audio book or two. Now I’m hooked!! Even though my commute is only 15 minutes, that is still a good 30 minutes a day. If I go to lunch I may listen again in my car, or take headphones and listen while I eat. It’s great because it’s hard to find time to read and it is easy now to plug reading into time that is otherwise “wasted”, such as driving a car.<br />
<br />
On our trip to Florida (driving from Michigan), it was great. It kept me awake better than the radio. Even laying in the sun. Sure, you can easily read, but it sure is more relaxing to just lay back and listen (especially if the audio book production is top notch.) Many narrators will do certain voices for the various characters. Depending on the narrator, sometimes this can be great, sometimes a bit weird. If you’ve got a good narrator if adds a whole new level to the enjoyment of the book.<br />
<br />
<h3>
So what is this “trick?” </h3>
<br />
It’s not really a trick I guess. There’s nothing devious or deceitful about it. It’s taking advantage of special pricing if you do things in the correct order.<br />
<br />
Read entire article on my Author Blog: <a href="http://bpkayser.wordpress.com/2013/05/24/audio-book-disc">http://bpkayser.wordpress.com/2013/05/24/audio-book-disc</a><div class="blogger-post-footer">***End***</div>Brian Kayserhttp://www.blogger.com/profile/14553812295322745265noreply@blogger.com2tag:blogger.com,1999:blog-7943835118979294771.post-11211279534074294272013-04-11T14:15:00.000-04:002013-04-11T14:20:44.693-04:00VMware VirtualCenter Server - high memory utilization in JavaThis applies to vSphere vCenter Server version 5.1.x but may pertain to other versions. <br />
<br />
<span style="font-size: xx-small;"><b>I didn't find much info out there when Goggling so I'm adding what I found here. I searched for:</b></span><br />
<span style="font-size: xx-small;">vCenter server high memory utilization</span><br />
<span style="font-size: xx-small;">VMware vCenter java high memory</span><br />
<span style="font-size: xx-small;">VirtualCenter Server out of memory</span><br />
<span style="font-size: xx-small;">VMWare vCenter Inventory Service memory</span><br />
<br />
We upgraded our vCenter server to 5.1.0-947939, after which the server (with 4GB of RAM) was starving for memory. There were 5 instances of JAVA.EXE, each eating up a lot of RAM. The worst single instance of JAVA was using 1.5GB of RAM, the next one was nearly at 1GB. <br />
<br />
In my searches I eventually found someone that was able to tweak the Java Heap Size default. There are many vCenter Server services that use Tomcat and Java, when you add them all up... ouch, it consumes all the RAM and brings the server to a grind. <br />
<br />
What I found:<br />
The main culprit was the "VMWare vCenter Inventory Service." This had the 1.5GB Java process. I found you could actually shut it down and the vSphere Client would still work. I won't pretend to know exactly what this service is for; but it seems to store the client INVENTORY data in a memory cache. I have only about 30 VMs and 3 hosts, hardly needing 1.5GB of cached info I would guess.<br />
<br />
In addition to the Inventory Service, I found you could shut down the "VMware VirtualCenter Managment Webservices" also; however, this will cause an IE type error message in the vSphere Client if you try to look at OVERVIEW on the PERFORMANCE tab. <br />
<br />
If you don't want to use the web-client, you can shut down "VMware vSphere Web Client" for a big chunk of memory also. Then if you do that, you also don't need "VMwareVCMSDS" which provides LDAP services (but it doesn't use much memory.) If you want to use the Web Client, you <b><u>do</u></b> need the LDAP service running though. <br />
<br />
The other services are as such:<br />
<ul>
<li>VMware Log Browser: not needed if you're not using the web client. Not a huge hog though.</li>
<li>VMware USB Arbitration Service: not a huge hog. </li>
<li>VMware vCenter Orchestrator Configuration: I don't use this, I have it disabled so I don't know what memory impact it has. </li>
<li>VMware VirtualCenter Server: The main service - you need this! </li>
<li>vCenter Single Sign On - does eat up some memory, but is nice to have.</li>
<li>VMware vSphere Profile-Driven Storage Service - I'm not really sure what this does to be honest. I turned it off to no noticable issues. </li>
</ul>
<div>
<b>THE FIX</b></div>
<div>
If you want the vCenter Inventory Service, and the Web Client running, there is a way to trim down the memory that JAVA uses. You can tweak config files (wrapper.conf) on the vCenter Server. Again, the biggest hog is the Inventory Service. Here is how to reduce the memory requirements. </div>
<div>
<ol>
<li>Go to: C:\Program Files\VMware\Infrastructure\Inventory Service\conf</li>
<li>Save a backup copy of WRAPPER.CONF</li>
<li>Edit WRAPPER.CONF with a text editor</li>
<li>Look for the section: # Maximum Java Heap Size (in MB)</li>
<li>Modify "<b>wrapper.java.maxmemory</b>" Mine was set to 3072, I changed mine to 384. </li>
<li>Save the file.</li>
<li>Open Task Manager if you wish, and look for the JAVA process using the most RAM.</li>
<li>Shutdown / Restart the service: VMware vCenter Inventory Service.</li>
<li>Observe the memory difference. </li>
</ol>
It didn't comply 100% to the setting for me, but it did keep it to around 500MB in my case. </div>
<div>
<br /></div>
<div>
You can also tweak the other services the same way.</div>
<div>
<ul>
<li><b>Webclient</b> - Edit: C:\Program Files\VMware\Infrastructure\vSphereWebClient\server\bin\service\conf\wrapper.conf</li>
<li><b>Management Webservices</b> - Edit: C:\Program Files\VMware\Infrastructure\tomcat\conf\wrapper.conf</li>
<li><b>Log Browser</b> - Edit: C:\Program Files\VMware\Infrastructure\vSphereWebClient\logbrowser\conf\wrapper.conf</li>
</ul>
<i>If the MAXMEMORY value isn't there you can add it.</i></div>
<div>
<i><br /></i></div>
<div>
I kept all the services running and just tweaked the wrapper.conf files. My server went from 3.95GB of ram used (and running like crap) to 2.8GB used and running pretty good. </div>
<div>
<br /></div>
<div>
If you don't have many hosts and VMs you could have it running lean and mean (under 1GB of RAM) by just running the services below. This may be at the expense of vSphere Client performance and not seeing overview performance charts. </div>
<div>
<ul>
<li>vCenter Single Sign On</li>
<li>VMware USB Arbitration Service</li>
<li>VMware VirtualCenter Server</li>
<li><i>I also SQL on this box. </i></li>
</ul>
</div>
<div class="blogger-post-footer">***End***</div>Brian Kayserhttp://www.blogger.com/profile/14553812295322745265noreply@blogger.com29tag:blogger.com,1999:blog-7943835118979294771.post-41306873052074636542013-03-12T12:09:00.000-04:002013-03-12T12:09:29.319-04:00Does the AMD 2356 processor support EVC<br />
<div style="margin-bottom: .0001pt; margin: 0in;">
<span style="font-size: 13.5pt;">Mr. Google couldn't directly answer this question for me so I
figured I'd throw it out here just in case someone else wanted the direct
answer. <o:p></o:p></span></div>
<div style="margin: 0in 0in 0.0001pt;">
<br /></div>
<div style="margin: 0in 0in 0.0001pt;">
<span style="font-size: 13.5pt;">I had three HP
Proliant DL365 G5 servers, with dual Quad-Code AMD Opteron 2356 Processors as
my VMware hosts. They went into production in 2008 and served us well.
I added a new server into the mix, an HP Proliant DL165 G7, with
dual AMD Opteron 6220 Processors. <o:p></o:p></span></div>
<div style="margin-bottom: .0001pt; margin: 0in;">
<br /></div>
<div style="margin-bottom: .0001pt; margin: 0in;">
<span style="font-size: 13.5pt;">They did not seem to play well with VMware’s vMotion so I figured
I needed to enable the Enhanced vMotion Compatibility (EVC) mode. Well, the older host didn’t seem compatible
with <i>that</i> either. In vSphere Client, when you look at the
SUMMARY of the host, there is a heading “VMware EVC Mode:” It will say “Disabled”, of course, if it isn’t
enabled, but next to it there is a info box.
When you click that it says: “Supported EVC Modes: EVC Not Supported”. Drab! <o:p></o:p></span></div>
<div style="margin-bottom: .0001pt; margin: 0in;">
<br /></div>
<div style="margin-bottom: .0001pt; margin: 0in;">
<span style="font-size: 13.5pt;">Not to be discouraged I Googled around but couldn’t find anything
that specifically said anything about my older hosts processors supporting EVC
or not. But I did find a VMware tool
(and ISO) that creates a boot CD that will tell you for sure what the deal
is. <o:p></o:p></span></div>
<div style="margin-bottom: .0001pt; margin: 0in;">
<br /></div>
<div style="margin-bottom: .0001pt; margin: 0in;">
<span style="font-size: 13.5pt;">So, with fingers crossed, I booted-up the old and reliable host with
the newly burned bootable CD. Ah, look
at all those YESes!! </span></div>
<div style="margin-bottom: .0001pt; margin: 0in;">
<span style="font-size: 13.5pt;"><br /></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg94Lk20nFBVSRCf1UL2-VuSHkF3gNg3CDdig7rNwkdA-8KW_SWIfmOyvez_CioiQIc6GYPVqhxbDjX9DVndFBEM1lZ83WXLo_Z0-sMfNQ6No5QT7DoDbGe2Fpv-X2rbLDC6zi4Qu90CtMC/s1600/VMware-AMD-2336-EVC.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="472" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg94Lk20nFBVSRCf1UL2-VuSHkF3gNg3CDdig7rNwkdA-8KW_SWIfmOyvez_CioiQIc6GYPVqhxbDjX9DVndFBEM1lZ83WXLo_Z0-sMfNQ6No5QT7DoDbGe2Fpv-X2rbLDC6zi4Qu90CtMC/s640/VMware-AMD-2336-EVC.jpg" width="640" /></a></div>
<div style="margin-bottom: .0001pt; margin: 0in;">
<span style="font-size: 13.5pt;"><br /></span></div>
<div style="margin-bottom: .0001pt; margin: 0in;">
<span style="font-size: 13.5pt;">But SNAP – the final
nail! “<b>Supported EVC Modes: None</b>”</span></div>
<div style="margin-bottom: .0001pt; margin: 0in;">
<br /></div>
<div style="margin-bottom: .0001pt; margin: 0in;">
<span style="font-size: 13.5pt;">I guess I’m going server shopping… <o:p></o:p></span></div>
<div class="blogger-post-footer">***End***</div>Brian Kayserhttp://www.blogger.com/profile/14553812295322745265noreply@blogger.com3tag:blogger.com,1999:blog-7943835118979294771.post-43696071191793904932012-11-21T09:27:00.001-05:002012-12-17T12:21:14.866-05:00Upgrade Lefthand SAN Disks / HP StorageWorks P4500<h2>
Can you upgrade a Lefthand / HP SAN Node's Hard Drives?</h2>
<div>
<span style="font-size: large;">According to HP support the answer is <b>YES!!</b></span></div>
<div>
<br /></div>
<div>
Here is what I have learned so far. Yes, you can upgrade your SAN node hard drives simply by replacing the drives with new larger drives and then re-imaging the node with the latest SAN/iQ CD which you can download as an ISO. </div>
<div>
<br /></div>
<div>
I mainly have P4500 series units. I have three nodes that have 300GB SCSI drives. I can replace those with 600GB drives and essentially double my storage space. I could even go with 1TB or 2TB drives and grow it even larger. However those are "Midline" drives and you take a 40% performance hit according to HP support. As of right now the biggest 15K SCSI drives they support are the 600GB drives. The 1 or 2 TB drives are 7.2K RPM. To keep HP happy and maintain service contracts you need to use the HP specific drives. </div>
<div>
<br /></div>
<div>
Another interesting note is that I can even take my SATA SAN and put in SCSI drives to make it a SCSI (SAS) SAN. Nice.</div>
<div>
<br /></div>
<div>
I'm posting this because I couldn't find anything on-line that even hinted that this was possible, let alone supported. So from the horses mouth (HP), it is, and if you do it right, it is even supported. What they do is that if you have a hard drive failure you will have to work with a different department for replacement hard drives. They have 3 year warranties. They may not fall under a 4-hour response time (if you have that level), I forgot to ask that. </div>
<div>
<br /></div>
<div>
That's all I'm going to post right now. If enough people are interested in the details I'll follow-up with part numbers, the process, etc. </div>
<div>
<br /></div>
<div>
Let me know by commenting and <b>maybe click an ad or two!</b> </div>
<div>
<span style="color: #cfe2f3; font-size: xx-small;"><br /></span></div>
<div>
<span style="color: #cfe2f3; font-size: xx-small;">hard drive upgrade for lefthand SAN </span><span style="color: #cfe2f3; font-size: xx-small;">lefthand SAN increase storage space </span><span style="color: #cfe2f3; font-size: xx-small;">replace hard drives in HP StorageWorks SAN </span><span style="color: #cfe2f3; font-size: xx-small;">how to upgrade Lefthand SAN</span></div>
<div>
<span style="color: #cfe2f3;"><span style="font-size: xx-small;">how to upgrade HP SAN </span><span style="font-size: xx-small;">Can you put bigger drives in S</span><span style="font-size: xx-small;">AN</span></span><br />
<span style="color: #cfe2f3;"><span style="font-size: xx-small;"><br /></span></span>
<br />
<span style="color: white;"><br /></span><span style="color: white;">restripe pending because of cluster edit or migration</span><br />
<span style="color: white;">data protection degraded</span><br />
<div>
<span style="color: white;"><br /></span></div>
</div>
<div class="blogger-post-footer">***End***</div>Brian Kayserhttp://www.blogger.com/profile/14553812295322745265noreply@blogger.com13tag:blogger.com,1999:blog-7943835118979294771.post-11311335958185107172012-10-29T10:13:00.000-04:002012-12-06T09:42:59.771-05:00HP LeftHand SAN - CMC Support Mode Settings<h3>
<b>Post in a nutshell:</b> <span style="font-weight: normal;">See below for a command to allow you to see (once again) Snapshot behavior in the HP / Lefthand / SanIQ CMC where the Snapshot doesn't disappear until it is actually done moving data pointers!!</span></h3>
<br />
Do you miss the old HP (LeftHand) P4000 Centralized Management Console? You know, the one that used to actually tell us how much data a snapshot was consuming and what was going on with it? It used to be that when you deleted a Snapshot you could instantly see the Snapshot above it get allocated space added to it, then you'd see the data consumed in that Snapshot grow, and the data in the one you deleted shrink, until gone, then it would disappear. <br />
<br />
Well I guess, unlike Lefthand, HP decided they needed to dummy-it-down for us. Now you get no Snapshot data and when you delete a Snapshot it instantly disappears. Now it doesn't <i>really </i>disappear instantly, it <u>still </u>has to roll-up the data pointers to the Snapshot above (or back into the main volume if no Snapshots exist), but it gives the <i>appearance </i>of just vanishing instantly. However, it could be churning for hours before it is actually done. I think it is <u>more </u>confusing now because for the Idiot Admins that they dummied-it-down for, they will wonder why deleting the Snapshot did not give them any space back on their SAN as instantly as the Snapshot disappeared. This is because it doesn't report the reclaimed space until it truly is deleted. So it could be hours before they see it. In the mean time they could have started frantically whacking more Snapshots trying to reclaim space - which may actually have the reverse effect at first. <br />
<br />
Reverse Effect?? Yes, when you delete a Snapshot, it has to allocate MORE space to the Snapshot above to give it room to copy the data pointers. If you are at 95% capacity and you start deleting Snapshots, you could see it jump to 99%... Yikes. That wasn't intended!! Not to fear... if you wait (long enough) you will get the reclaimed space. But boy... it should would be nice to know what is going on in the background!!<br />
<br />
Well, I found one HP tech support guy that threw me a few bones. I won't name him in-case he was not supposed to share this.<br />
<br />
I still can't see Snapshot data info... BUT, what he did share does help a little. He shared a parameter file switch that changes the behavior of the CMC so it does not instantly remove deleted Snapshots from the CMC view. It just changes the status to "<span style="font-family: Courier New, Courier, monospace;"><b>Not Available, Deleting</b></span>". Now this seems pretty simple, but it can be huge; just to (at least) know that you have snapshots hanging out there deleting. If you delete 10 Snapshots in one fell swoop for example, it will be very nice to know when they are all done. Well... to me anyhow. I wish I could see the data also, but hey, this is better than nothing.<br />
<br />
<h4>
Here is all you do:</h4>
<br />
1. Close the CMC (if open)<br />
2. For the user that runs the CMC, navigate in Explorer to directory<br />
C:\Users\<UserName>\.storage_systems<br />
3. Open the preferences.txt file in an editor (notepad)<br />
4. Add the following line to the end of the file<br />
<span style="font-family: Courier New, Courier, monospace;"><b>CmcSnapshotPreference.showAutoAndDeletingSnapshots = true</b></span><br />
5. Save the file, exit the editor<br />
6. Launch the CMC<br />
<br />
Now when you delete Snapshots they won't just disappear, their status will change to "Not Available, Deleting", until they have been rolled up. <br />
<br />
The unfortunate part of this is that when you exit the CMC it will delete this "big boy" setting so you need to apply it anytime you want/need this functionality. You could get around this by making the file read-only, but you will get an error each time you exit the CMC saying it couldn't write to the file. If you can live with this that's fine, but also know that if you change anything in the GUI preferences (HELP/PREFERENCES... menu), it will not be able to write those changes. Also, it could have other unforeseen consequences so do this at YOUR OWN RISK. <br />
<br />
For the life of me, I'm not sure whey they don't make this a check-box preference in the CMC GUI; or at least let the command stick in the config file!!! But it is what it is. <br />
<br />
<h3>
<i>*** This is exclusive information by-the-way, as of this posting, this command is nowhere in cyberspace (at least according to Google)! ***</i></h3>
<br />
<h2>
Enabling Support Upgrades</h2>
Now in researching this, I was also given these additional commands (which is more in-line with what I think he meant with "Big Boy Mode".) By default, when you apply patches, the CMC will do this sort of on auto-pilot to all nodes in a management group. These commands adds a "Support Upgrades" tab to the CMC where you can manually apply specific patches to specific Nodes. Add these to the preferences.txt file mentioned above.<br />
<br />
<span style="font-family: Courier New, Courier, monospace;"><b>CmcSystemPreference.supportMode = true</b></span><br />
<span style="font-family: Courier New, Courier, monospace;"><b>CmcUpgradePreference.useOldUpgrades = true</b></span><br />
<span style="font-family: Courier New, Courier, monospace;"><b>CmcUpgradePreference.advancedUpgradeMode = true </b></span><br />
<br />
Again, these will disappear when you exit the CMC. <br />
<br />
<br />
<i>Where's this new "Support Upgrade" tab?? Click on the "Configuration Summary" item in the tree, then you will see the new tab on the right.</i><br />
<br />
<span style="color: white;"><br /></span>
<span style="color: white;">restripe pending because of cluster edit or migration</span><br />
<span style="color: white;">data protection degraded</span><br />
<br /><div class="blogger-post-footer">***End***</div>Brian Kayserhttp://www.blogger.com/profile/14553812295322745265noreply@blogger.com5tag:blogger.com,1999:blog-7943835118979294771.post-2472937666680165742012-10-29T08:40:00.003-04:002012-10-29T09:09:14.723-04:00Disable Windows Error Recovery - Windows Server 2008 / Windows 7 / Etc.We have Citrix XenApp servers that boot from an HP Lefthand P4500 SAN volume and for some reason during scheduled reboots on the weekend they would hang on the stupid "<b>Windows Error Recovery</b>" about 50% of the time. Selecting "<b>boot windows normally</b>" would boot the server just fine - but it was always a manual operation. So this would leave these production servers in a downed state until someone manually intervened. <br />
<br />
<span style="font-size: large;">To fix this problem I used the following command (from a command prompt):</span><br />
<br />
<div class="MsoNormal" style="background: white; line-height: 12.0pt;">
<span style="color: #333333;"><span style="font-family: Courier New, Courier, monospace;"><b><br /></b></span></span></div>
<div class="MsoNormal" style="background: white; line-height: 12.0pt;">
<span style="color: #333333;"><span style="font-family: Courier New, Courier, monospace;"><b>bcdedit /set
{current} bootstatuspolicy ignoreallfailures</b></span><span style="font-family: inherit; font-size: 10pt;"><o:p></o:p></span></span></div>
<div class="MsoNormal" style="background: white; line-height: 12.0pt;">
<span style="color: #333333;"><span style="font-family: Courier New, Courier, monospace;"><br /></span></span></div>
<div class="MsoNormal" style="background-position: initial initial; background-repeat: initial initial;">
</div>
<div style="background-color: white; line-height: normal;">
<br /></div>
<div style="background-color: white; line-height: normal;">
To check to see if it is set you can simply use <b>BCDEDIT </b>by itself to display the settings. For example:</div>
<br />
<div style="background-color: white;">
<b style="font-family: 'Courier New', Courier, monospace;"><br /></b></div>
<div style="background-color: white;">
<b style="font-family: 'Courier New', Courier, monospace;">C:\Users\administrator>bcdedit</b></div>
<div style="background-color: white;">
<b style="font-family: 'Courier New', Courier, monospace;">Windows Boot Manager</b></div>
<div style="background-color: white;">
<span style="font-family: Courier New, Courier, monospace;"><b>--------------------</b></span></div>
<div style="background-color: white;">
<span style="font-family: Courier New, Courier, monospace;"><b>identifier {bootmgr}</b></span></div>
<div style="background-color: white;">
<span style="font-family: Courier New, Courier, monospace;"><b>device partition=\Device\HarddiskVolume1</b></span></div>
<div style="background-color: white;">
<span style="font-family: Courier New, Courier, monospace;"><b>description Windows Boot Manager</b></span></div>
<div style="background-color: white;">
<span style="font-family: Courier New, Courier, monospace;"><b>locale en-US</b></span></div>
<div style="background-color: white;">
<span style="font-family: Courier New, Courier, monospace;"><b>inherit {globalsettings}</b></span></div>
<div style="background-color: white;">
<span style="font-family: Courier New, Courier, monospace;"><b>default {current}</b></span></div>
<div style="background-color: white;">
<span style="font-family: Courier New, Courier, monospace;"><b>resumeobject {E54e3a5f-48ad-11df-ae93-ced11e86b19d}</b></span></div>
<div style="background-color: white;">
<span style="font-family: Courier New, Courier, monospace;"><b>displayorder {current}</b></span></div>
<div style="background-color: white;">
<span style="font-family: Courier New, Courier, monospace;"><b>toolsdisplayorder {memdiag}</b></span></div>
<div style="background-color: white;">
<span style="font-family: Courier New, Courier, monospace;"><b>timeout 30</b></span></div>
<div style="background-color: white;">
<span style="font-family: Courier New, Courier, monospace;"><b><br /></b></span></div>
<div style="background-color: white;">
<span style="font-family: Courier New, Courier, monospace;"><b>Windows Boot Loader</b></span></div>
<div style="background-color: white;">
<span style="font-family: Courier New, Courier, monospace;"><b>-------------------</b></span></div>
<div style="background-color: white;">
<span style="font-family: Courier New, Courier, monospace;"><b>identifier {current}</b></span></div>
<div style="background-color: white;">
<span style="font-family: Courier New, Courier, monospace;"><b>device partition=C:</b></span></div>
<div style="background-color: white;">
<span style="font-family: Courier New, Courier, monospace;"><b>path \Windows\system32\winload.exe</b></span></div>
<div style="background-color: white;">
<span style="font-family: Courier New, Courier, monospace;"><b>description Windows Server 2008 R2</b></span></div>
<div style="background-color: white;">
<span style="font-family: Courier New, Courier, monospace;"><b>locale en-US</b></span></div>
<div style="background-color: white;">
<span style="font-family: Courier New, Courier, monospace;"><b>inherit {bootloadersettings}</b></span></div>
<div style="background-color: white;">
<span style="font-family: Courier New, Courier, monospace;"><b>recoverysequence {E54e3a63-48ad-11df-ae93-ced11e86b19d}</b></span></div>
<div style="background-color: white;">
<span style="font-family: Courier New, Courier, monospace;"><b>recoveryenabled Yes</b></span></div>
<div style="background-color: white;">
<span style="font-family: Courier New, Courier, monospace;"><b>osdevice partition=C:</b></span></div>
<div style="background-color: white;">
<span style="font-family: Courier New, Courier, monospace;"><b>systemroot \Windows</b></span></div>
<div style="background-color: white;">
<span style="font-family: Courier New, Courier, monospace;"><b>resumeobject {</b></span><b style="font-family: 'Courier New', Courier, monospace;">E54e3a63-48ad-11df-ae93-ced11e86b19d</b><span style="font-family: Courier New, Courier, monospace;"><b>}</b></span></div>
<div style="background-color: white;">
<span style="font-family: Courier New, Courier, monospace;"><b>nx OptOut</b></span></div>
<span style="font-family: Courier New, Courier, monospace;"><b style="background-color: yellow;">bootstatuspolicy IgnoreAllFailures</b></span><br />
<div style="background-color: white;">
<br /></div>
<div style="background-color: white; line-height: normal;">
If the setting has not been applied you will not see "bootstatuspolicy" in the list. </div>
<div style="background-color: white; line-height: normal;">
<br /></div>
<div style="background-color: white; line-height: normal;">
Now upon reboot it does not stop and wait. I know this has been helpful as we had to repair the boot info on a one of the servers and it started doing it again afterwards (after 8 months of smooth reboots.) This setting got wiped-out when we did the repair so I had to set it again. </div>
<br />
<br /><div class="blogger-post-footer">***End***</div>Brian Kayserhttp://www.blogger.com/profile/14553812295322745265noreply@blogger.com1tag:blogger.com,1999:blog-7943835118979294771.post-4931136608206253542012-10-19T09:57:00.001-04:002012-10-29T09:07:56.841-04:00Was my PC or Server Cloned and SysPrepped?To find out if a server was cloned check out this registry key (this is for Windows Server 2008 R2 but I would image would be the same or similar for most flavors of Windows):<br />
<br />
<span style="font-family: Courier New, Courier, monospace;">HKEY_LOCAL_MACHINE\SYSTEM\Setup\CloneTag</span><br />
<br />
CloneTag will actually tell you the date and time when SysPrep was run on it. <br />
<br />
<br />
Now if you want to check the SID values (perhaps with the source to make sure they are in fact different) use the <a href="http://technet.microsoft.com/en-us/sysinternals/bb897417.aspx" target="_blank">PsGetSid utility</a>. You can just run <a href="http://technet.microsoft.com/en-us/sysinternals/bb897417.aspx" target="_blank">PsGetSid </a>from a command prompt to get the SID from your local PC or use "\\" to get the SID of computers connected to your LAN.<br />
<br />
The output would be similar to this from my two Citrix servers (and this tells me my SIDs are different):<br />
--------------------------------------------------------------------------------------------------<br />
<br />
<span style="font-family: Courier New, Courier, monospace;">C:\PSTools><b>psgetsid \\lan-citrix1</b></span><br />
<span style="font-family: Courier New, Courier, monospace;"><br /></span>
<span style="font-family: Courier New, Courier, monospace;">PsGetSid v1.44 - Translates SIDs to names and vice versa</span><br />
<span style="font-family: Courier New, Courier, monospace;">Copyright (C) 1999-2008 Mark Russinovich</span><br />
<span style="font-family: Courier New, Courier, monospace;">Sysinternals - www.sysinternals.com</span><br />
<span style="font-family: Courier New, Courier, monospace;"><br /></span>
<span style="font-family: Courier New, Courier, monospace;">SID for \\lan-citrix1:</span><br />
<span style="font-family: Courier New, Courier, monospace;">S-1-5-21-2052776799-13871689-1737724133</span><br />
<span style="font-family: Courier New, Courier, monospace;"><br /></span>
<br />
<span style="font-family: Courier New, Courier, monospace;">C:\PSTools><b>psgetsid \\lan-citrix2</b></span><br />
<span style="font-family: Courier New, Courier, monospace;"><br /></span>
<span style="font-family: Courier New, Courier, monospace;">PsGetSid v1.44 - Translates SIDs to names and vice versa</span><br />
<span style="font-family: Courier New, Courier, monospace;">Copyright (C) 1999-2008 Mark Russinovich</span><br />
<span style="font-family: Courier New, Courier, monospace;">Sysinternals - www.sysinternals.com</span><br />
<span style="font-family: Courier New, Courier, monospace;"><br /></span>
<span style="font-family: Courier New, Courier, monospace;">SID for \\lan-citrix2:</span><br />
<span style="font-family: Courier New, Courier, monospace;">S-1-5-21-3592252623-8394611391-4172714545</span><br />
<br />
<br />
<br />
--------------------------------------------------------------------------------------------------<br />
<br />
<br />
<br />
<span style="font-size: large;">Now does any of this really matter? Ask Mark Russinovich (or at least check out this blog entry of his:)</span><br />
<br />
<h3 class="post-name" style="background-color: white; color: #333333; font-family: 'Segoe UI', 'Lucida Grande', Verdana, Arial, Helvetica, sans-serif; line-height: 1.25; margin: 0px 0px 15px; padding: 0px;">
<span style="font-size: small;"><a href="http://blogs.technet.com/b/markrussinovich/archive/2009/11/03/3291024.aspx" target="_blank">The Machine SID Duplication Myth (and Why Sysprep Matters)</a></span><span style="font-size: 2em; font-weight: normal;"> </span></h3>
<br />
<br />
** On a side Note - if you do Clone Citrix servers and you use the Citrix Gateway, you need to edit the STA ID for each clone acting as a Secure Ticket Agent. **<br />
<br />
<br />
This applies to Presentation Server or XenApp. XenApp 6.x in my case.<br />
To change the STA ID edit the <span style="font-family: Courier New, Courier, monospace;">CtxSta.config</span> file.<br />
This can be found here: <span style="font-family: Courier New, Courier, monospace;">%ProgramFiles(x86)%\Citrix\system32\</span><span style="font-family: 'Courier New', Courier, monospace;">CtxSta.config</span><br />
Open the file with Notepad.<br />
Simply change the STA ID value with anything you like and save. I just tweaked one number.<br />
<br />
For example - in the file:<br />
<span style="font-family: Courier New, Courier, monospace;"><b>GlobalConfig</b></span><br />
<span style="font-family: Courier New, Courier, monospace;"><b>UID=<span style="background-color: yellow;">STAD8D1856594FF</span></b></span> <= change this to something unique.<br />
<br />
<br />
<br /><div class="blogger-post-footer">***End***</div>Brian Kayserhttp://www.blogger.com/profile/14553812295322745265noreply@blogger.com2tag:blogger.com,1999:blog-7943835118979294771.post-19124119749041078342011-01-07T08:49:00.004-05:002011-01-07T09:07:19.076-05:00How to Change Citrix License Server Name on a XenApp 6 Server<div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;">I'm posting this article because when I was searching for this answer it was hard to find anything that did a good job explaining exactly what needed to be done. This article specifically explains how to tell a XenApp 6 server to point to a different Citrix License Server for its licensing requirements. These instructions may apply to older versions of XenApp also. </div><div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"><br />
</div><div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;">The proper way to do this is to create (or modify) a XenApp computer policy. You will need to add (or modify) the following setting "License Server Host Name" with the appropriate name of the new license server.</div><div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"></div><ol><li>Open the Citrix Delivery Services Console</li>
<li>Drill down into XenApp, then your farm, then click on POLICIES.</li>
<li>Click on the COMPUTER tab within the Policies pain</li>
<li>Depending on your situation you may need/want to create a new policy for this, or you can just edit the "Unfiltered" policy. I'm assuming if you are reading this you are fairly new to XenApp and are not dealing with a large number of servers, so just using the Unfiltered policy is fine for you.</li>
<li>If you already have the "License Server Host Name" policy, simply change the server name value to what you want. Otherwise you will need to add the policy with the appropriate server name. Make sure you can ping the name of the license server, exactly how you are entering it, from the XenApp server. Use the fully qualified DNS name for best success. If it is beyond a firewall (or has local firewall settings) that don't allow ping replies then obviously you may not be able to ping it. Just make sure it has the appropriate ports open (typically the range 27000 -27010)</li>
<li>Save the policy and make sure it is enabled.</li>
<li>From my experience you will need to reboot the XenApp servers for it to take affect quickly.</li>
</ol><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEimL_GddYZaacgTkRH_6YcZ4toq3GlKCiQyBdrfbtAqfEnraFgo-d3YbJTEWXZd7xFrT5njoMibGDS0DHgazeElfJvUS6jEkSgUEnDfUG32EL4mkChXIyflhNfu83Dzs0_KC2HB-8RDacmK/s1600/XENAPP+LICENSING.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="412" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEimL_GddYZaacgTkRH_6YcZ4toq3GlKCiQyBdrfbtAqfEnraFgo-d3YbJTEWXZd7xFrT5njoMibGDS0DHgazeElfJvUS6jEkSgUEnDfUG32EL4mkChXIyflhNfu83Dzs0_KC2HB-8RDacmK/s640/XENAPP+LICENSING.JPG" width="640" /></a></div><div><br />
</div><br />
<div><br />
</div><div><br />
</div><div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"><b><span class="Apple-style-span" style="font-size: large;">HOWEVER </span></b>- I also figured out that sometimes the servers didn't comply to that policy during a reboot - <a href="http://brian-kayser.blogspot.com/2011/01/citrix-xenapp-6-servers-keep-reverting.html"><span class="Apple-style-span" style="color: #666666;">see my article on that issue here</span></a>. So to ensure it always points to the correct license server I would suggest also changing the following registry settings with the appropriate server name for the license server. I will assume if you are reading this you know how to do this via REGEDIT. The XenApp policy does NOT updates these settings and they will retain the old license server name unless you change it.</div><div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"><br />
</div><div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"><span class="Apple-style-span" style="color: blue;">HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Citrix\LSName </span></div><div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;">and</div><div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"><span class="Apple-style-span" style="color: blue;">HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Citrix\Licensing\MFCM_LSHostName</span></div><div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"><br />
</div><div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"><b>If XenApp can't find the Citrix license server then your users will not be able to log on!!</b><br />
<b><br />
</b></div><div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"><br />
</div><div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"><span class="Apple-style-span" style="font-size: xx-small;">Alternate search terms to help people find this article:</span></div><div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"></div><ul><li><span class="Apple-style-span" style="font-size: xx-small;">Change XenApp licensing server</span></li>
<li><span class="Apple-style-span" style="font-size: xx-small;">Point XenApp to different license server</span></li>
<li><span class="Apple-style-span" style="font-size: xx-small;">Update Xenapp License server name</span></li>
<li><span class="Apple-style-span" style="font-size: xx-small;">Control which Citrix License Server is queried by XenApp</span></li>
<li><span class="Apple-style-span" style="font-size: xx-small;">How to modify XenApp License Server Host Name</span></li>
<li><span class="Apple-style-span" style="font-size: xx-small;">Citrix XenApp cannot contact the license server </span></li>
</ul><div class="blogger-post-footer">***End***</div>Brian Kayserhttp://www.blogger.com/profile/14553812295322745265noreply@blogger.com3tag:blogger.com,1999:blog-7943835118979294771.post-71762648367461353052011-01-06T10:57:00.002-05:002011-01-07T09:08:15.699-05:00Citrix XenApp 6 servers keep reverting to old license server nameWhen setting up our new Citrix XenApp 6 server for initial testing we installed the license server on itself (call it CITRIX1). As we were nearing the time to move it into production I wanted to move the license service to another non XenApp server (call it XENAPP-LS). I did so and migrated our MetaFrame Presentation Server licenses to it. I wasn't exactly sure how to tell the CITRIX1 XenApp server to point to the new XENAPP-LS license server so did some Google searches. I figured out you have to create a XenApp Computer Policy and add the following setting "License Server Host Name" with the appropriate name of the new license server (i.e. XENAPP-LS.mydomain.local). Did a reboot and bingo, good to go! It starting use the new licenses. I removed the license server off of CITRIX1.<br />
<br />
<span class="Apple-style-span" style="font-size: large;"><b>Problem</b></span><br />
Well, as I was installing things I needed to do a reboot. On the next reboot it popped up a message saying "Citrix License Error : Citrix XenApp cannot contact the license server CITRIX1". Say what? I checked my XenApp computer policy and it still said the license server was XENAPP-LS. Rebooted again and this time it did not complain and was working fine. Fast forward a few days, now the server is in production. After one of the 3am reboots we perform each night it reverted back to looking for CITRIX1 as the license server. No one could log on that morning!! Another reboot fixed it. <br />
<br />
Apparently if the server can not communicate with the SQL XenApp datastore at a magical moment during boot up, it looks in the registry and does not apply the policy. It seems like it would eventually re-check and then apply the policy but that apparently does not happen (since it was 4 hours since the 3am reboot before the first user tried to log on and would not let anyone on). <br />
<br />
<b><span class="Apple-style-span" style="font-size: large;">Solution</span></b><br />
You need to edit the registry on your XenApp server(s) to manually change the license server name to what it needs to be.<br />
<br />
Checkout:<br />
<span class="Apple-style-span" style="color: blue;">HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Citrix\LSName </span><br />
and<br />
<span class="Apple-style-span" style="color: blue;">HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Citrix\Licensing\MFCM_LSHostName</span><br />
<br />
These still had the CITRIX1 value in there. I changed it to XENAPP-LS.mydomin.local and have not since had the problem.<div class="blogger-post-footer">***End***</div>Brian Kayserhttp://www.blogger.com/profile/14553812295322745265noreply@blogger.com10tag:blogger.com,1999:blog-7943835118979294771.post-83576088048072274622010-11-05T09:49:00.001-04:002010-11-05T09:49:41.627-04:00Verizon Motorola DROID 2 - Android 2.3.2 update pushed outThis morning my DROID2 told me it had downloaded the 2.3.2 update (2.3.20.A955) and asked if I wanted to install it. <br />
<br />
<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg7k7DTDh3VuZGZ9WByRr09RDZVhzecY_93kuDcCbMy615KaQ_h1TbWukDN2CXjYayZLgc-D1X1DW4xjOB6EXOJeuqfLNe9XdLFpVtF2fHmLotAE4KsY16zpfXCTnz2CAsGDsf08KVNlDmH/s1600/DROID2-UPDATE.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg7k7DTDh3VuZGZ9WByRr09RDZVhzecY_93kuDcCbMy615KaQ_h1TbWukDN2CXjYayZLgc-D1X1DW4xjOB6EXOJeuqfLNe9XdLFpVtF2fHmLotAE4KsY16zpfXCTnz2CAsGDsf08KVNlDmH/s1600/DROID2-UPDATE.JPG" /></a></div><br />
<div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"><br />
</div><div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;">Install an update you say? Duh, go for it!! </div><div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;">But what changed? What improved? What's better?</div><div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"><br />
<a name='more'></a><br />
</div><div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;">According to Verizon here are the improvements and enhancement, with a few <span class="Apple-style-span" style="color: blue;">comments </span>from me.</div><div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"><br />
</div><div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"></div><div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"><b><span class="Apple-style-span" style="font-size: x-large;">Improvements:</span></b></div><div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"></div><ul><li>Improved battery life. <span class="Apple-style-span" style="color: blue;">- Yet to be seen (some people that have been using the update for a few days think they have noticed an improvement, others have seen no gain)</span></li>
<li>Heightened proximity sensor accuracy to enable faster screen response. <span class="Apple-style-span" style="color: blue;">- It does seem a bit more fluid now.</span></li>
<li>View the Weather widget in both landscape and portrait orientation. <span class="Apple-style-span" style="color: blue;">- Great, but I use WeatherBug, I like it better and it shows the temperature in the Notifications Bar.</span> </li>
<li>Simpler setup, improved user interactions, and better notifications for Visual Voice Mail. </li>
<li>Background Email Sync during display inactivity for better user experience.</li>
<li>Support for email domain suffixes containing more than three characters.</li>
<li>Keep text messages organized with chronological in-box screen. <span class="Apple-style-span" style="color: blue;">- I like this change!</span></li>
<li>Edit text messages after you’ve inserted a video file. </li>
<li>Improved audio sound during recorded video playbacks.</li>
<li>Stream Guided Tour videos on device in Help Center application with ease.</li>
<li>Faster location tracking during GPS navigation.</li>
<li>Faster transitions between Wi-Fi and 3G in data connection. <span class="Apple-style-span" style="color: blue;">- Does seem to work faster when I move between Wi-Fi areas. </span></li>
<li><span class="Apple-style-span" style="color: blue;">Fixed Folder Issue? - This isn't on their list, but I've had an issue where you can't open a folder. So far I have been unable to reproduce this problem with the latest update :) </span></li>
</ul><br />
<div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"><br />
</div><div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"><b><span class="Apple-style-span" style="font-size: x-large;">Enhancements:</span></b></div><div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"></div><ul><li>New ability to add pictures from your Gallery to a contact.<span class="Apple-style-span" style="color: blue;"> - Not sure what they are talking about. I didn't notice anything new/different.</span></li>
<li>Export all your contacts to the SD card.</li>
<li>View details of Social Networking contacts.<span class="Apple-style-span" style="color: blue;"> - I think this is a fix for the Facebook bug where a contact’s status covered up their phone numbers</span></li>
<li>VZ Navigator is now preloaded on device. <span class="Apple-style-span" style="color: blue;">- So basically they forced VZN onto everyones phone. Why would you pay $10 a month to use VZN when the Google Maps Navigation is free and totally awesome?</span></li>
</ul><br />
<div><span class="Apple-style-span" style="font-size: x-large;"><b>Here is my list of few things that are missing:</b></span></div><div><ul><li>Notes field on Contacts still do not replicate correctly (Outlook, Exchange Server, Corporate Sync). If you add a contact on your PC with notes, all replicates fine. If you add more notes, they NEVER get synced on your DROID again. Worse, if you add notes on the DROID, they WILL get synced back to the PC but will wipe out any un-synced notes (it will replace all the notes with what the DROID has). If you update a phone number, title, etc., that does sync back to the DROID corrrectly, this is just a problem with the notes. I was really hoping the next update would address this.</li>
<li>I personally like the haptic feedback but others don't. When you disable haptic feedback it does not disable it everywhere as some would like. This update does not address this.</li>
<li>With Corporate Sync, calendar items added on the DROID get marked as private by default. It would be really nice to give the users the options to pick their default preference of private or public. No joy on this one either with this update.</li>
<li>Still no task or notes build-in. Yes, I know, this is a much bigger issue... but still, I miss my Outlook notes! I am using an app for this now but don't really like having this info stored on a 3rd party server. </li>
</ul></div><br />
<div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"><br />
</div><div class="blogger-post-footer">***End***</div>Brian Kayserhttp://www.blogger.com/profile/14553812295322745265noreply@blogger.com3tag:blogger.com,1999:blog-7943835118979294771.post-52821942954798898542010-11-04T15:20:00.000-04:002010-11-04T15:20:33.866-04:00Default Password List<div class="post-body entry-content" style="font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 13px; line-height: 1.4; position: relative; width: 716px;"><div>I'm always trying to find the default admin password for different stuff. I created a static page of vendors / devices and their default admin passwords. </div><div><br />
</div><div><br />
</div><div><a href="http://brian-kayser.blogspot.com/p/default-passwords.html">http://brian-kayser.blogspot.com/p/default-passwords.html</a> </div><div><br />
<br />
</div></div><div class="blogger-post-footer">***End***</div>Brian Kayserhttp://www.blogger.com/profile/14553812295322745265noreply@blogger.com1tag:blogger.com,1999:blog-7943835118979294771.post-69301750191371525502010-10-29T13:24:00.004-04:002010-10-29T13:29:38.300-04:00Updating firmware on an AirLink (Sierra Wireless) Raven X Cellular Modem<div class="MsoNormal">Okay, this probably doesn’t apply to many people because I doubt the user base for these units is very big, but I ran into this issue today. </div><div class="MsoNormal"><br />
</div><div class="MsoNormal"><b><span class="Apple-style-span" style="font-size: x-large;">Problem</span></b></div><div class="MsoNormal">Wanted to upgrade the firmware on an AirLink Raven X Cellular Modem (V4221-S) to the latest since what it had on it was from February 2007. Appearantly AirLink is now Sierra Wireless (or they bought them… I don’t really care…). Downloaded release <span class="apple-style-span"><span style="color: #333333; font-family: Arial, sans-serif; line-height: 115%;"><a href="http://www.sierrawireless.com/Support/Downloads/SecuredDownload.aspx?DownloadID=%7b4CEA7335-17EE-46D7-B924-0A02260E8A05%7d&ProductName=AirLink_Raven_X_EV-DO_for_Sprint&Redirect=/Support/Downloads/AirLink/M2M_Gateways/AirLink_Raven_X_EV-DO_for_Sprint.aspx"><span style="color: #978c16;">RavenX_EVDOA_4.0.7.001.exe</span></a></span></span> and ran it from a laptop connected to the modem via ethernet. Before reaching the 50% mark it told me “Unable to write the firmware to the modem flash”… how rude! </div><div class="MsoNormal"><br />
<a name='more'></a></div><div class="MsoNormal"><b><span class="Apple-style-span" style="font-size: x-large;">Solution</span></b></div><div class="MsoNormal">The firmware on the unit was 3.0.1.048 and you can’t leapfrog directly to 4.0.7.001. Checkout the firmware roadmap on Sierra Wireless’ site:<span class="Apple-style-span" style="color: #45818e;"> <a href="http://www.sierrawireless.com/Sierra%20Wireless/Support/AirLink/Intermediate%20Firmware.aspx?id=RavenXEVDOA_3">INTERMEDIATE FIRMWARE</a>.</span> That page also includes the older firmware needed. I installed 3.1.19.098 and 3.4.4.002 in succession without a problem. Since the 3.4.5.006 update said “or later” on their procedure map, I skipped it and tried the 4.0.7.001 again. Bingo, that worked now. <span style="font-family: Wingdings;">J</span> </div><div class="blogger-post-footer">***End***</div>Brian Kayserhttp://www.blogger.com/profile/14553812295322745265noreply@blogger.com6tag:blogger.com,1999:blog-7943835118979294771.post-47275087460534311902010-10-28T14:41:00.005-04:002012-10-30T09:48:47.001-04:00Remove Blogger Navigation Bar AND whitespace<b><span class="Apple-style-span" style="font-size: x-large;">Problem</span></b><br />
Didn't want the default Blogger NavBar. Found a way to remove / hide it, but the whitespace reserved for it remained. <br />
<br />
<a name='more'></a><b><span class="Apple-style-span" style="font-size: x-large;">Solution</span></b><br />
The "#navbar-iframe" code below removes the NavBar, but in my case it did not remove the whitespace. The following line was supposed to remove the whitespace but did not; so I started adjusting it with negative numbers and bingo! For this blog I found -60 removed all the whitespace, results may vary!<br />
<br />
Add the following code within the STYLE section of your template if there is one, otherwise add the STYLE tags as below.<br />
<br />
<span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><span class="Apple-style-span" style="color: #0b5394;"><style type='text/css'></span></span><br />
<span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><span class="Apple-style-span" style="color: #0b5394;"><!--Remove NavBar --></span></span><br />
<span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><span class="Apple-style-span" style="color: #0b5394;">#navbar-iframe {height: 0px; visibility: hidden; display: none;}</span></span><br />
<span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><span class="Apple-style-span" style="color: #0b5394;">body #header {margin-top:-60px !tweak until you get desired results;}</span></span><br />
<span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><span class="Apple-style-span" style="color: #0b5394;"></style></span></span><br />
<span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><span class="Apple-style-span" style="color: #0b5394;"><br />
</span></span><br />
<span class="Apple-style-span" style="color: #0b5394; font-family: 'Courier New', Courier, monospace;"><span class="Apple-style-span" style="color: black; font-family: 'Times New Roman';"><b>Add it where???</b></span></span><br />
If you're not familiar with editing the template, here is a step-by-step guide:<br />
<br />
<ol>
<li>Log into your blogger.com account</li>
<li>Within "Manage Blogs", click DESIGN on the blog you want to apply this to</li>
<li>You will be taken to the "Page Elements" screen. Now click EDIT HTML under the tabs.</li>
<li>To be on the safe side, you may want to backup your current template with the option provided</li>
<li>Search for "</style>" on the page to see if there is a style section, if there is, add the code there (without the STYLE lines).</li>
<li>If not, search for </head> and then add the code above it, including the STYLE lines.</li>
<li>Preview it, if it still has whitespace try increasing the number. If it cuts off your header, try decreasing the number. Increments of 10 would be good to work with.</li>
</ol>
<h2>
<br /></h2>
<h2>
Update: (you may need to follow these steps for different templates)</h2>
<div>
<div style="background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 19px; margin-bottom: 1em; margin-top: 10px;">
Here are the steps to remove the Blogger Navigation bar /Blogger Nav Bar</div>
<span style="background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 19px;">1. Log into your blogger account</span><br style="background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 19px;" /><span style="background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 19px;">2. From your Dashboard choose </span><span style="background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 14px; font-weight: bold; line-height: 19px;">Layout</span><br style="background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 19px;" /><span style="background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 19px;">3. Now choose the </span><span style="background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 14px; font-weight: bold; line-height: 19px;">Edit Html </span><span style="background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 19px;">option</span><br style="background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 19px;" /><span style="background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 19px;">4. You will see your template code</span></div>
<div>
<span style="background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 19px;">5. Optional: you may want to copy and paste it to Notepad (or something) as a backup</span><br style="background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 19px;" /><span style="background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 19px;">6. In that template code find</span><br style="background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 19px;" /><div class="code" style="background-color: #f5f8fa; border: 2px solid rgb(215, 232, 240); color: blue; font-size: small; margin: 10px 0px; overflow: auto; padding: 5px 10px;">
<pre class="csharpcode"><span style="font-family: Courier New, Courier, monospace;">]]<span class="kwrd">></</span><span class="html" style="color: maroon;">b:skin</span><span class="kwrd">></span></span></pre>
</div>
<span style="background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 19px;">and replace it with</span><br style="background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 19px;" /><br style="background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 19px;" /><div class="code" style="background-color: #f5f8fa; border: 2px solid rgb(215, 232, 240); color: blue; font-size: small; margin: 10px 0px; overflow: auto; padding: 5px 10px;">
<pre class="csharpcode"><span style="font-family: Courier New, Courier, monospace;">#navbar-iframe,#navbar { display: none !important; }
]]<span class="kwrd">></</span><span class="html" style="color: maroon;">b:skin</span><span class="kwrd">></span></span></pre>
</div>
<span style="background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 19px;">7. Preview it - the nav bar should be gone. </span></div>
<div>
<span style="background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 19px;">8. Now select </span><span style="background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 14px; font-weight: bold; line-height: 19px;">SaveTemplate</span><span style="background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 19px;">.</span><br style="background-color: white; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 19px;" /></div>
<div class="blogger-post-footer">***End***</div>Brian Kayserhttp://www.blogger.com/profile/14553812295322745265noreply@blogger.com1tag:blogger.com,1999:blog-7943835118979294771.post-76320027432284825902010-10-28T11:02:00.001-04:002010-10-28T11:05:19.400-04:00Incorrect IP address showing up in DNS<b><span class="Apple-style-span" style="font-size: x-large;">Problem</span></b><br />
Windows 2003 server at a remote office has two network cards, one for general traffic and another one used with a network sniffer that was also loaded on the server if we need to track down a network hog issue. The problem was that the NIC used for the sniffer auto-registered with DNS and sometimes would "advertise" that IP address and not the desired static IP address of the server. <br />
<br />
<a name='more'></a><br />
<br />
<b><span class="Apple-style-span" style="font-size: x-large;">Solution</span></b><br />
Drilled into the TCP/IP properties of the sniffer NIC, went into Advanced options, then un-checked "Register this connection's address in DNS". Did a IPCONFIG /FLUSHDNS on my workstation then did a PING to the DNS name. Now the IP address was correct (the static IP, not the DHCP IP address on the sniffer card).<div class="blogger-post-footer">***End***</div>Brian Kayserhttp://www.blogger.com/profile/14553812295322745265noreply@blogger.com1tag:blogger.com,1999:blog-7943835118979294771.post-23461051921090375012010-10-27T09:00:00.002-04:002010-10-28T07:55:10.203-04:00Doing ASA Quality of Service (QOS) on DSL or Cable Internet<div class="MsoNormal"><b>PROBLEM</b></div><div class="MsoNormal">Needed a way to help improve the QOS on our Cisco IP Phones (we use mainly 7940 / 7941 and 7960 / 7961 phones). On our WAN there is no problem as it is all controlled via our own routers and our VOIP provider's routers which we have direct T1's with. Our Cisco Call Manager is hosted by a VOIP solution provider, the equipment is not at our site (not that it really matters). </div><div class="MsoNormal"><br />
</div><div class="MsoNormal">So the problems were at our small remote project sites which usually only have DSL or Cable Internet connections to the internet (not direct to our VOIP provider). We know and fully understand that we really can't control QOS over the internet but the IP Phones have worked out pretty well in the past with out it. However, recently these sites have been doing a lot more paperless work which is taking up a lot more outbound bandwidth because of scanning documents and uploading to a project web-site with a document repository. Whenever someone was scanning documents (which uploaded to an off-site server) the phone quality went down the tubes. This is mostly noticed by the person on the other (remote) end, not the employee at the project site. </div><div class="MsoNormal"><br />
</div><div class="MsoNormal"><b>WHAT TO DO?</b><br />
<a name='more'></a></div><div class="MsoNormal">We've been replacing PIX 501's with Cisco ASA 5505's as you can't do QOS on a PIX. However, simply adding the basic QOS commands to the ASA doesn't do the trick. The problem is that the ASA has a 100MB connection to the DSL router and as far as the ASA is concerned there is no congestion and pushes out the data as fast as it can and never really priorities anything. Now when the DSL router starts pushing the data up its tiny 1MB pipe, that's where the choppy audio starts. So what we needed to do was to tell the ASA what the actual available bandwidth was so it could properly "throttle" and packets and properly prioritize the VOIP packets. </div><div class="MsoNormal"><br />
</div><div class="MsoNormal">We still have no control over what the vendor provided DSL router (or cable modem, etc.) does with the packets after they leave the ASA, but it does help. With the ASA knowing the <i>speed limit</i>, it can tell the lower priority traffic "whoa... slowdown fellas!", leaving upload bandwidth available for VOIP traffic. </div><div class="MsoNormal"><br />
</div><div class="MsoNormal">The main disadvantage is that some available outbound bandwidth may be wasted as we are basically setting it aside for VOIP. If we have 1MB available from our ISP but we restrict non-VOIP traffic to 600MB, that is the best upload speed available, even if there is no VOIP call in progress. </div><div class="MsoNormal"><br />
</div><div class="MsoNormal"><b>SOLUTION</b></div><div class="MsoNormal">Okay, here are the magic commands. The only thing you will really need to tweak is the SHAPE AVERAGE value. The value I have below is for 600K. This should not be set to your available DSL upload speed, it should be set to how much bandwidth you want to give to lower priority traffic. It may take a good hour of your time testing different values until you get the results you want. Make a VOIP call, then start an upload, listen for jitter or watch the stats on the up-stream phone for dropped packets, jitter, and call quality if possible.</div><div class="MsoNormal"><br />
</div><div class="MsoNormal">This example is doing traffic Shaping vs. Policing. Shaping seemed to work better. Policing is similar but allowed low priority traffic to burst for 10 seconds which caused jitter during that time. </div><div class="MsoNormal"><br />
</div><div class="MsoNormal"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">priority-queue outside </span> <i><span style="color: #548dd4;">Creates the priority queue<o:p></o:p></span></i></div><div class="MsoNormal"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">!</span></div><div class="MsoNormal"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">class-map VOIP-TRAFFIC</span> <i><span style="color: #548dd4;">defines a class map to match VOIP (EF) traffic</span></i></div><div class="MsoNormal"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> match dscp e</span>f</div><div class="MsoNormal"><br />
</div><div class="MsoNormal"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">policy-map PRIORITY-POLICY</span> <i><span style="color: #548dd4;">The policy for priority traffic (in this case VOIP based on the class map)<o:p></o:p></span></i></div><div class="MsoNormal"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> class VOIP-TRAFFIC</span></div><div class="MsoNormal"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> priority</span></div><div class="MsoNormal"><br />
</div><div class="MsoNormal"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">policy-map QOS-TRAFFIC-OUT</span> <i><span style="color: #548dd4;">The actual policy map that gets applied to the interfaces and uses the stuff we just defined<o:p></o:p></span></i></div><div class="MsoNormal"> <span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">class class-default</span> <i><span style="color: #548dd4;">Default traffic policy</span></i></div><div class="MsoNormal"> <span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">shape average 600000</span> <i><span style="color: #548dd4;">Default traffic conforms to this value</span></i></div><div class="MsoNormal"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> service-policy PRIORITY-POLICY</span> <i><span style="color: #548dd4;">Exception</span></i> <i><span style="color: #548dd4;">to the default policy (in this case VOIP traffic which will have no limit)</span></i></div><div class="MsoNormal"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">!</span></div><div class="MsoNormal"><br />
</div><div class="MsoNormal"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">service-policy QOS-TRAFFIC-OUT interface outside </span> <i><span style="color: #548dd4;">actually</span></i> <i><span style="color: #548dd4;">applies it to the interface (remove this to test with and without QOS).</span></i></div><div class="MsoNormal"><i><span style="color: #548dd4;"><br />
</span></i><br />
You can get a lot more complex with this, giving FTP traffic more or even less bandwidth for example, but this does the trick to prioritize VIOP traffic and restrict everything else. This example does not discuss prioritizing via a VPN, this could be done also but is not what we wanted to do. <br />
<br />
For more detailed info check out: <a href="http://www.cisco.com/en/US/products/hw/vpndevc/ps2030/products_tech_note09186a008084de0c.shtml">http://www.cisco.com/en/US/products/hw/vpndevc/ps2030/products_tech_note09186a008084de0c.shtml</a><br />
<br />
<i><span style="color: #548dd4;"><br />
</span></i></div><div class="MsoNormal"></div><div class="MsoNormal" style="color: black; font-style: normal; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"><b>WHAT ABOUT INBOUND TRAFFIC</b></div><div class="MsoNormal" style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;">Yes, you can throttle inbound also but it doesn't help very much and probably isn't worth it. You actually can't do Shaping on outbound and inbound at the same time, but you could do policing (i.e. <span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">Police Outbound 6000000</span> within a CLASS). I played with it, cutting the bandwidth in half even, but it didn't do much. It may have helped just slightly but the loss of available download bandwidth wasn't worth it. The problem really lies in the fact the packets coming down have already traversed the slow link, so once it hits the ASA it is really too late and VOIP prioritization doesn't do much. I think the slight improvement was only because it caused the download I was doing (for testing) to come down slower, but it didn't give the results I wanted. So for me, I'm just doing outbound (upload) QOS and that is where the main problem was anyhow. </div><div class="MsoNormal" style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"></span></div><div class="blogger-post-footer">***End***</div>Brian Kayserhttp://www.blogger.com/profile/14553812295322745265noreply@blogger.com19tag:blogger.com,1999:blog-7943835118979294771.post-39183821925035914582010-10-26T11:41:00.003-04:002010-10-28T07:57:32.471-04:00Recovering deleted items in Outlook<span class="Apple-style-span" style="font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 11px; line-height: 16px;">Information from Microsoft for recovering deleted items in Outlook. The Exchange server must be configured to retain deleted items for a certain amount of time for this to work. </span><br />
<span class="Apple-style-span" style="font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 11px; line-height: 16px;"><br />
</span><br />
<span class="Apple-style-span" style="font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 11px; line-height: 16px;">By default, the Recover Deleted Items functionality is only enabled on the Deleted Items folder in a user's private folders. To enable the Recover Deleted Items functionality on mail folders other than the Deleted Items folder (for example, for the Sent Items, Drafts, Outbox and Inbox folders), make the following changes to the registry:</span><br />
<a name='more'></a><br />
<ol style="-webkit-box-sizing: border-box; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 11px; line-height: 16px; position: relative;"><li style="-webkit-box-sizing: border-box; position: relative;">Start Registry Editor.</li>
<li style="-webkit-box-sizing: border-box; position: relative;">Locate and then click the following key in the registry:<div class="indent" style="-webkit-box-sizing: border-box; padding-bottom: 10px; padding-left: 20px; padding-right: 20px; padding-top: 0px;"><b style="-webkit-box-sizing: border-box;">HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Exchange\Client\Options</b></div></li>
<li style="-webkit-box-sizing: border-box; position: relative;">On the <b style="-webkit-box-sizing: border-box;">Edit</b> menu, click <b style="-webkit-box-sizing: border-box;">Add Value</b>, and then add the following registry value:<div class="indent" style="-webkit-box-sizing: border-box; padding-bottom: 10px; padding-left: 20px; padding-right: 20px; padding-top: 0px;">Value name: DumpsterAlwaysOn<br />
Data type: DWORD<br />
Value data: 1</div></li>
<li style="-webkit-box-sizing: border-box; position: relative;">Close Registry Editor.</li>
</ol><div class="blogger-post-footer">***End***</div>Brian Kayserhttp://www.blogger.com/profile/14553812295322745265noreply@blogger.com1tag:blogger.com,1999:blog-7943835118979294771.post-23750021992223731672010-10-25T02:48:00.001-04:002010-10-28T07:58:24.901-04:00Purge email script for ExchangePlease note, I talk a lot about Sunbelt's Exchange Archiver below but this purge script could be used with other archive solutions or even without one, just as a purge. Obviously you will want to take care that you don't purge valuable data. The Exchange server I'm running this on is Exchange 2003.<br />
<br />
<b><span class="Apple-style-span" style="font-size: x-large;">PROBLEM</span></b><br />
Implemented Sunbelt Exchange Archiver (SEA) but wanted more control over how emails were purged from the actual Exchange server. I wanted specific policies for my user's Inbox, Sent Items, Deleted Items, and our Spam folder. SEA removes emails from Exchange and leaves short-cuts or "stubs" which allows you to still open the emails, they just get retrieved from the archive server instead of Exchange. I have SEA setup to remove the emails after 3 months leaving stubs, SEA has a global setting as to how long to keep these stubs in Exchange / Outlook. I have SEA setup to keep these for 4 years but I really didn't want them hanging around for that long in certain folders. I figure if the user takes the time to file the message in a folder, they can keep the stub for 4 years, otherwise if it is left in the Inbox or Deleted folder it shouldn't hang around as long. Even though the stub isn't taking up that much space in Exchange, it can make Outlook run slow. For example, say a user never files anything and keeps all emails in their inbox. Their inbox may have say 30,000 items in it. Okay, maybe the Exchange server is only holding the full emails for the last 3 months (in my case) it still has all these stubs to deal with and index. When the user switches sort orders, Outlook has to work with all 30,000 items to rearrange the sort, making it very slow. My thinking is that if it is over 1 year old and still in the Inbox they probably don't care about it any longer. If they do need to find it, they can search for it in the Archive as it will still be there. <br />
<br />
Here are my policies that I wanted to implement:<br />
<a name='more'></a><br />
<br />
<ul><li>All emails (unless specified) get copied to archive server after 7 days if not sent to deleted folder</li>
<li>SEA removes email from Exchange after 3 months, leaving stub / shortcut</li>
<li>InBox - remove email stubs after 12 months (don't remove anything that isn't archived)</li>
<li>Deleted Items - Don't archive at all, delete anything in there after 6 months</li>
<li>Sent Items - remove email stubs after 12 months </li>
<li>Spam Folder - Don't archive at all, delete anything in there after 3 months</li>
</ul><div><b><span class="Apple-style-span" style="font-size: x-large;">SOLUTION</span></b></div><div>There are ways to purge emails directly within Exchange but it did not give me the granularity I wanted so I wrote a VBscript to do the job. The script reads the users from Active Directory and only runs in on users with a special flag set. On each user's property page, there is a value for "Web Page" that we never use. I have the script setup to read that value and if it is set to "PurgeEmail=Yes" then the script will run for them. I also picked the "Web Page" property because it is available to modify when selecting multiple users at one time so it is easy to add to a big group of users. </div><div><br />
</div><div>The script then whips through each user, one at a time, and cleans up their email. This has reduced a huge amount storage needs on our Exchange server that would have taken SEA over a year to accomplish alone. I'm not going to go into the script line by line, just be careful. </div><div><br />
</div><div><div style="text-align: center;"><b><span class="Apple-style-span" style="font-size: x-large;">***THE SCRIPT***</span></b></div></div><div><b><span class="Apple-style-span" style="font-size: x-large;">Batch File</span></b></div><div>Here is a batch file that is launched via a scheduled task. The script produces output so this does a simple pipe to log files (I'm maintaining 7 days of log files). </div><div><br />
</div><div><b>EMAIL-CLEANUP.BAT</b></div><div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">@Set Weekday=%Date:~0,3%</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">Echo Start -> %date% %Time% > email-cleanup-%Weekday%.log</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">cscript email-cleanup.vbs //nologo >> email-cleanup-%Weekday%.log</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">Echo Finished -> %date% %Time% >> email-cleanup-%Weekday%.log</span></div><div style="font-weight: bold;"><br />
</div></div><div><b><br />
</b></div><div><b><span class="Apple-style-span" style="font-size: x-large;">VBScript </span></b><br />
<b></b><b>EMAIL-CLEANUP.VBS</b></div><div><b><br />
</b></div><div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">''' Written by Brian Kayser '''</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">''' Designed to be run with CSCRIPT.EXE '''</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><br />
</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">ON ERROR RESUME NEXT</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><br />
</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">Dim zTotalUserItems</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">Dim zTotalCnt(3)</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">Dim cnt</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">Dim zFlags</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><br />
</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">Set WshShell = CreateObject("WScript.Shell")</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><br />
</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">zCat = "user"</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><br />
</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">zDomain = WshShell.ExpandEnvironmentStrings("%USERDOMAIN%")</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><br />
</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">'Create connection and command object</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">Set con = CreateObject("ADODB.Connection")</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">Set com = CreateObject("ADODB.Command")</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><br />
</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">' — Opening the connection</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">con.Provider = "ADsDSOObject" 'this is the ADSI-OLEDB provider name</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">con.Open "Active Directory Provider"</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><br />
</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">' Create a command object for this connection</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">Set Com.ActiveConnection = con</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><br />
</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><br />
</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">'============================================================================================='</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><br />
</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">'Compose a search string</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><br />
</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">Com.CommandText = "select Name,mail, wwwHomePage from 'LDAP://"&zDomain&"' WHERE Objectcategory='" & zCat & "' AND wwwHomePage = 'purgeemail=Yes*' order by name"</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><br />
</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">'wscript.echo Com.CommandText 'uncomment this line for debugging purposes.</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><br />
</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">wscript.echo </span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><br />
</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">' — Execute the query</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">Set rs = Com.Execute</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">'--------------------------------------</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">' Navigate the record set</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">'--------------------------------------</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">zCnt=0</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">wscript.echo "Running mailbox cleanup"</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">wscript.echo date &" | "& time</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">While Not rs.EOF</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> zName = rs.Fields("Name")</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> wscript.echo "** " & zName &" - "& rs.Fields("mail")</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> zFlags = rs.Fields("wwwHomePage")</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> email_cleanup(rs.Fields("mail"))</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> wscript.echo date &" | "& time</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> rs.MoveNext</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> zCnt = zCnt + 1 </span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">Wend</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">WScript.StdOut.Write vbCrLf<span class="Apple-tab-span" style="white-space: pre;"> </span></span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">WScript.StdOut.Write vbCrLf<span class="Apple-tab-span" style="white-space: pre;"> </span></span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><br />
</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">wscript.echo "Deleted " &zTotalCnt(0)& " total items from *Inbox* folders"</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">wscript.echo "Deleted " &zTotalCnt(1)& " total items from *Sent Items* folders"</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">wscript.echo "Deleted " &zTotalCnt(2)& " total items from *Deleted Items* folders"</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">wscript.echo "Deleted " &zTotalCnt(3)& " total items from *Spam* folders"</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><br />
</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">zGrandTotal = zTotalCnt(0) + zTotalCnt(1) + zTotalCnt(2) + zTotalCnt(3)</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">wscript.echo "---------------------------------------------------------"</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">wscript.echo "Deleted " &zGrandTotal& " total items"</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><br />
</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><br />
</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">WScript.StdOut.Write vbCrLf<span class="Apple-tab-span" style="white-space: pre;"> </span></span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><br />
</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">wscript.echo zCnt & " Users processed"</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><br />
</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><br />
</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><br />
</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><br />
</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">'=================Email Clean-up Script=============================</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><br />
</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">Function email_cleanup(zMailbox)</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">Dim ExchangeFolderUrl</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">zTotalUserItems = 0</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">ExchangeFolderUrl = "http://email.XYZCompany.com/exchange/"&zMailbox</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><br />
</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">'Inbox and Sent Items processing will only delete messages that have been archived and have a SEA shortcut</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">'Spam processing will delete Archived and Non Archived emails</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">'Deleted Items processing will delete all items (mail, calender, etc) even if not archived.</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">Dim FoldersToCheck(3)</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">Dim MessageTypesToPurge(3)</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">Dim AgedMonths(3)</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><br />
</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">FoldersToCheck(0) = "Inbox"</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">MessageTypesToPurge(0)="Inbox"</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">AgedMonths(0) = 12</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><br />
</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">FoldersToCheck(1) = "Sent Items"</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">MessageTypesToPurge(1)="Sent Items"</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">AgedMonths(1) = 12</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><br />
</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">FoldersToCheck(2) = "Deleted Items"</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">MessageTypesToPurge(2)="Deleted Items"</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">AgedMonths(2) = 6</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><br />
</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">FoldersToCheck(3) = "Spam\Spam - Quarantine"</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">MessageTypesToPurge(3)="Spam"</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">AgedMonths(3) = 3</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><br />
</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><br />
</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">Dim Fcnt</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><br />
</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">Fcnt = UBound(FoldersToCheck)</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">For x = 0 to Fcnt</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> Dim UrlToProcess</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> UrlToProcess = ExchangeFolderUrl + "/" + FoldersToCheck(x)</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> Dim Emails</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> Emails = Array()</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> WScript.StdOut.Write vbCrLf<span class="Apple-tab-span" style="white-space: pre;"> </span></span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> WScript.StdOut.Write " Processing Folder: ...\" + right(FoldersToCheck(x) + vbCrLf,66)</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> If lcase(zFlags) = "purgeemail=yes-nodeletedfolder" and FoldersToCheck(x) = "Deleted Items" Then </span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">WSCript.Echo " Skipping *Deleted Items* Folder for this user"</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> Else</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">If Not GetEmailUrlList(UrlToProcess, Emails, AgedMonths(x),MessageTypesToPurge(x)) Then</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">wscript.Echo("Failed to get email list for: " + UrlToProcess)</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">End If</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">zTotalCnt(x) = zTotalCnt(x) + cnt</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> End If</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">Next</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><br />
</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">wscript.echo "Deleted " &zTotalUserItems& " total items from " & zName & "'s mailbox"</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">WScript.StdOut.Write vbCrLf<span class="Apple-tab-span" style="white-space: pre;"> </span></span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">WScript.StdOut.Write vbCrLf<span class="Apple-tab-span" style="white-space: pre;"> </span></span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><br />
</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><br />
</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">End Function</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><br />
</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><br />
</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><br />
</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">''' GetEmailUrlList '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">'</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">' Retrieves a list of permanent URLs that can be used to access the list of emails in a </span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">' folder</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">' folderUrl - the url of the email folder to enumerate</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">' arr - an empty dynamic array that this function will redim and fill</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">' return value - false on error, true other wise</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">Function GetEmailUrlList(folderUrl, ByRef arr, AgedMonths,PurgeType)</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">GetEmailUrlList = False</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">Dim filterDate</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">filterDate = DateAdd("m", -AgedMonths, Date())</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">m = CStr(Month(filterDate))</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">if len(m) = 1 Then</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> m = "0" + m</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> End If</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> d = Cstr(Day(filterDate))</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> if len(d) = 1 Then</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> d = "0" + d</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> End If</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">Dim DateStr</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">DateStr = CStr(Year(filterDate)) + "-" + m + "-" + d + "T00:00:00Z"</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">' open a connection</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">Dim Conn</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">Set Conn = CreateObject("ADODB.Connection")</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">Conn.Provider = "ExOLEDB.DataSource"</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">Conn.Open folderUrl</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">If Conn.Errors.Count > 0 OR Conn.State <> 1 Then</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">Conn.Close</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">Set Conn = Nothing</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">Exit Function</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">End if</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><br />
</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">' create a recordset</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">Dim Rs</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">Set Rs = CreateObject("ADODB.Recordset")</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><br />
</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">' The SQL command</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">Dim SSql</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">SSql = "Select ""DAV:href"",""DAV:parentname"", ""http://schemas.microsoft.com/exchange/permanenturl"" , ""urn:schemas:mailheader:subject"" ,""urn:schemas:httpmail:datereceived"" , ""urn:schemas:httpmail:fromemail"" "</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">If PurgeType="Deleted Items" Then </span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> SSql = SSql & " FROM scope('Deep traversal of """ & folderUrl & """') " </span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">Else</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> SSql = SSql & " FROM scope('shallow traversal of """ & folderUrl & """') " </span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">End If</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">If PurgeType="Inbox" or PurgeType = "Sent Items" Then</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> SSql = SSql & " WHERE ""DAV:contentclass"" = 'urn:content-classes:PAMmessage' and ""DAV:isfolder"" = false"</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">Else</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> If PurgeType="Non Archived" Then </span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> SSql = SSql & " WHERE ""DAV:contentclass"" = 'urn:content-classes:message' and ""DAV:isfolder"" = false"</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> Else</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> If PurgeType="Spam" Then </span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> SSql = SSql & " WHERE (""DAV:contentclass"" = 'urn:content-classes:PAMmessage' or ""DAV:contentclass"" = 'urn:content-classes:message') and ""DAV:isfolder"" = false"</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> Else</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> '' Deleted items - everything / every type</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> SSql = SSql & " WHERE ""DAV:isfolder"" = false"</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> End If</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> End If</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">End If</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><br />
</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">SSql = SSql & " AND ""urn:schemas:httpmail:datereceived"" < CAST(""" & DateStr & """ As 'dateTime')"</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><br />
</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">' Open the recordset</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">Rs.CursorLocation = 2 'adUseServer = 2, adUseClient = 3</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">Rs.CursorType = 0</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">Rs.Open SSql, Conn, 3</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">If Conn.Errors.Count > 0 OR Rs.State <> 1 Then</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">Rs.Close</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">Conn.Close</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">Set Rs = Nothing</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">Set Conn = Nothing</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">Exit Function</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">End If</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">wscript.echo " Deleting emails older than " &AgedMonths& " months old:" </span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">cnt = 0</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">If Rs.Recordcount > 0 Then</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">cnt = 0</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">rs.MoveFirst</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">While Not rs.EOF</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> zDate=split(rs.fields("urn:schemas:httpmail:datereceived"))</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> zFromEmail=rs.fields("urn:schemas:httpmail:fromemail")</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> zSubject=rs.fields("urn:schemas:mailheader:subject")</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><br />
</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> If PurgeType="Deleted Items" Then</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> zParent = Replace(rs.fields("Dav:parentname"),"%20"," ")</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> zLen = Len(zParent)</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> zPos = InStrRev(zParent,"/")</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> zFolder = Right(zParent,zLen-zPos)</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> If zFolder = "Deleted Items" then </span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">zFolder = ""</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> Else</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">zFolder = zFolder & "\"</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> End If</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> Else</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> zFolder = ""</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> End If</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><br />
</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> zPart1= left(zDate(0) &" | "& zFromEmail,34)</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> zPart2= " | "& zFolder & zSubject</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><br />
</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> zLine = left(zPart1 & zPart2,100)</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">'<span class="Apple-tab-span" style="white-space: pre;"> </span> zLine = zPart1 & zPart2</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><br />
</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> Wscript.echo " "& zLine</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><br />
</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">''''''''''' comment out this next line for testing (read-only)</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> rs.Delete</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><br />
</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> rs.MoveNext</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> cnt = cnt + 1</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">Wend<span class="Apple-tab-span" style="white-space: pre;"> </span></span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">End if</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">wscript.echo " Deleted " & cnt &" *"& PurgeType & "* emails from user " & zName</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">zTotalUserItems = zTotalUserItems + cnt</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><br />
</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">GetEmailUrlList = true</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">Rs.Close</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">Conn.Close</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">Set Rs = Nothing</span></div><div><span class="Apple-tab-span" style="white-space: pre;"><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> </span></span><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">Set Conn = Nothing</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">End Function</span></div><div style="font-weight: bold;"><br />
</div></div><div><b><br />
</b></div><div><b><br />
</b></div><div><b><span class="Apple-style-span" style="font-size: x-large;">***OUTPUT***</span></b></div><div>As written, the script does produce output, here is a sample:</div><div><br />
</div><div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">10/25/2010 | 1:26:58 AM</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">** John Doe - john.doe@XYZCompany.com</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><br />
</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> Processing Folder: ...\Inbox</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> Deleting emails older than 12 months old:</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> 10/24/2009 | Jill@XYZarchitect.co | Vivarium</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> Deleted 1 *Inbox* emails from user John Doe</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><br />
</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> Processing Folder: ...\Sent Items</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> Deleting emails older than 12 months old:</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> 10/24/2009 | john.doe@XYZCompany.com | Fw: Property for you</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> 10/24/2009 | john.doe@XYZCompany.com | Fw: Property for you</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> Deleted 2 *Sent Items* emails from user John Doe</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><br />
</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> Processing Folder: ...\Deleted Items</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> Deleting emails older than 6 months old:</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> 4/24/2010 | Adededdcellee@aol.com | Re: Hey cuz</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> 4/24/2010 | Adededdcellee@aol.com | Re: Hey cuz</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> 4/24/2010 | Adededdcellee@aol.com | Re: Hey cuz</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> 4/24/2010 | Jill@XYZarchitect.co | Re: Did you see that</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> Deleted 4 *Deleted Items* emails from user John Doe</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><br />
</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> Processing Folder: ...\Spam\Spam - Quarantine</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> Deleting emails older than 3 months old:</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> 7/24/2010 | mailing@dayspring.com | Overcoming Fear & Worry</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> 7/24/2010 | WhiteFlowerFarm@whitef | Add Perfume to Your Garden </span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"> Deleted 2 *Spam* emails from user John Doe</span></div><div><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">Deleted 10 total items from John Doe's mailbox</span></div></div><div><b><br />
</b></div><div class="blogger-post-footer">***End***</div>Brian Kayserhttp://www.blogger.com/profile/14553812295322745265noreply@blogger.com6