Keep the “Advanced Features” view always on in Active Directory Users and Computers MMC

June 8th, 2010

“Is there a way to keep the “Advanced Features” view always on?”

If you start a blank management console, add the ADUC snap-in, turn on Advanced Features view, and save the console, whenever you use *that* console file, Advanced Features will be on.

1. Launch a blank Microsoft Management Console: Start-> Run… mmc.exe

2. In the MMC menus, choose File->Add/Remove Snap-in… (or Ctrl+M)

3. Select “Active Directory Users and Computers” and hit the “Add >” button in the middle.

4. Hit OK to finish adding the snap-in.

5. Back in the console, select the Active Directory Users and Computers node under the “Console Root.”

6. Right-click on that ADUC node and choose “New Window from Here” in the menu.

7. In the MMC menus, choose  View->Advanced Features (this turns on the Attribute Editor, Security, Object, and other tabs as well as several other features in menus and makes other objects visible).

8. In the MMC menus, choose  File->Save (or Ctrl+S), specify a file name folder, file name, and hit the Save button.

9. In the MMC menus, choose  File->Options… and choose “User mode – limited access, single window,” then check the “Do not save changes to this console” checkbox, and finally hit OK.

10. In the MMC menus, choose “Save As…” and save under a different file name, and choose “Yes” when warned about the single window interface option.

11. In the MMC menus, choose File->Exit

12. Launch the second console you saved (in step 10) and use it – it should always have Advanced Features turned on.

13. If you need to make changes to other settings in the console, open the first console you saved (in step 8), adjust whatever other options you want, then repeat steps 9, 10, and 11 using a different file name in step 10 this time to distinguish the new settings.

Five Keys to Security Fundamentals

June 8th, 2010

(Excerpted & condensed from the Cisco Press book Network Security Auditing, by Chris Jackson, available June 4, 2010)

To understand security, it is critical that you realize that security is a process, not a product. Security is a broad topic, and one of the few in information technology that literally touches all aspects of a business. To focus security efforts and to make them manageable, it helps to break down the various aspects of security into the five pillars of security.

1. Assessment

Assessments document and identify potential threats, key assets, policies and procedure, and management’s tolerance for risk. Assessments are not something that are done once and then forgotten. As the business needs change and new services and technologies are introduced, regularly scheduled reassessments should be conducted. Doing this gives you an opportunity to test policies and procedures to ensure that they are still relevant and appropriate.

2. Prevention

Prevention is not just accomplished through technology, but also policy, procedure, and awareness. Expect individual security controls to fail, but plan for the event by using multiple levels of prevention.

3. Detection

Detection is how you identify whether or not you have a security breach or intrusion. If you can’t detect a compromise, then you run the risk of having a false sense of trust in your prevention techniques.

4. Reaction

Reaction is the aspect of security that is most concerned with time. The goal is to minimize the time from detection to response so that exposure to the incident is minimized. Fast reaction depends on prevention and detection to provide the data and context needed to recognize a security breach.

5. Recovery

Recovery is where you play detective to determine what went wrong so that you can get the systems back on line without opening up the same vulnerability or condition that caused the problem in the first place. There is also the post-mortem aspect that determines what changes need to be made to processes, procedures, and technologies to reduce the likelihood of this type of vulnerability in the future.

About the Author

Chris Jackson, Technical Solutions Architect in the Cisco Architectures and Verticals Partner Organization, has focused for the past six years on developing security practices with the Cisco partner community. During a 15-year career in internetworking, he has built secure networks that map to strong security policies for organizations, including UPS, GE, and Sprint. Chris is an active speaker on security for Cisco through TechwiseTV, conferences, and web casts. He has authored a number of whitepapers and is responsible for numerous Cisco initiatives to help build stronger security partners,. He holds dual CCIEs in security and routing and switching, CISA, CISSP, ITIL, seven SANS certifications, and a bachelors degree in Business Administration.

Top 10 Must-Have Skills for IT Pros

June 8th, 2010

There are many skills that IT Pros should know about in doing their day-to-day jobs. That is one of great benefits of being in the IT industry – learning new platforms and products as they are released. The following list has many of the most common ones that most IT Pros should have. While there are ten skills listed, they are not in an ordered ranking. Depending upon the size of the IT infrastructure and environment, some of these might not be applicable.

1. Troubleshooting

Is this a skill, an art, or both? If you ask any seasoned IT professionals, they will tell you that troubleshooting skills are important, very important – and not something that can be readily taught. The difficult part is that troubleshooting is a specific skill set that many corporations simply do not have the time or money to invest. Troubleshooting skills could make or break your career. Not having the required troubleshooting skills could become a RGE (resuming generating event), or it could become a career enhancer when you are able to fix a mission-critical server. All of this being said, one would think that there would be more emphasis on teaching and sharing troubleshooting skills; unfortunately, this is not the case. This is one skill that must be learned only after mastering a particular platform or program.

2. PowerShell and Scripting

No, you don’t have to be a programmer to be a successful network engineer (or vice-versa for that matter), but you do have to know PowerShell. More platforms from Microsoft (Exchange 2007 and Exchange 2010 have some features that can ONLY be implemented with PowerShell) are managed through PowerShell – including the recently released SharePoint 2010. Being able to script many day-to-day tasks will make more time available for proactive tasks.

3. Networking and Interoperability

Interoperability is the key to networking. We live in a highly connected world, a world of disparate platforms. Networking is understanding how to make these platforms communicate. As an IT Pro (and this includes programmers to a certain extent), you must understand the communications protocols, OSI Model layers, and connectivity required for systems to communicate. This also includes understanding connecting and securing wireless networks. This is one skill that is common to almost all IT Pros, whether they are programmers, security personnel, auditors or the help desk personnel.

4. Virtualization

It doesn’t matter which Virtualization technology you use (Microsoft’s Hyper-V, VMware, or even Sun’s VirtualBox), it is the use that is important. Virtualization is being adopted by companies of all sizes as a means to reduce costs through consolidation of servers and lower cooling requirements. Application Virtualization has become very popular with businesses. Having the skill set to deploy applications that connect securely through a browser is critical for companies that have numerous offices.

Virtualization can aid in near real-time response to network conditions by providing for more disaster recovery capabilities. Another interesting area of virtualization is through the use of desktop virtualization. This involved configuring and maintaining the virtual environment whereby users can connect to their own virtual desktop remotely or through the web. Another use for virtualization is for improved instruction for IT education and elsewhere, since there is no longer a need to have large numbers of computers for classrooms.

5. Wireless

As part of our highly connected world, we expect to able to connect wirelessly from almost anywhere at any time. Those IT Pros who can install, configure, and maintain secure wireless networks have a skill that is in high demand. The key word here is secure wireless network. IT Pros with this skill set are in high demand as we expect to be able to securely connect to wireless networks in almost all locations at any time. Implementing a secure wireless environment also means being able to plan and troubleshoot interferences as well. Anyone managing wireless environments must be able to handle the calls that come in from remote users who are having problems with their wireless equipment, and different operating systems capabilities and limitations.

6. Disaster Recovery

This is as much a methodology as a skill set. IT Pros must be able plan, test, and implement a disaster recovery (DR) plan. This is critical for the survivability of a data center or network. One of the hardest tasks is being able to test disaster recovery plans. There is hardly enough time available to perform the critical tasks that need to get done while adding a yearly or semi-yearly test of the DR plan. An integral part of the disaster recovery process is implementing fault-tolerant systems and providing for redundancy in your network.

7. Security

All IT Pros must have a good understanding of both physical and electronic security. One of the most difficult tasks with IT security is educating users. Company information can be gleaned through social engineering that most companies would rather not have divulged. Training users (and IT staff) to be cognizant of and prevent social engineering is extremely difficult. IT Pros must always be aware of security issues and understand the vulnerabilities within their networks (from operating systems, servers to the lowly cable closet). This does not mean that every IT Pro must be able to perform a penetration test against his or her own network, but they must understand and prevent attacks against their network.

8. Database Administration

Corporations retain more information than ever before and are quite dependent on their databases. Regulatory compliance has had a huge impact on database management and data retention. Corporations are required to retain information for a number of years and, in some cases, emails as well. Storage space and solutions have become much cheaper, so there is more emphasis on data retention. Having the ability to create and extract information from one of these databases is critical. Many IT Projects use a SQL backend, Archiving information from Microsoft’s Office Communication Server requires a SQL backend. If you are going to deploy Microsoft Office SharePoint Server (MOSS), this will require a SQL backend. IT Pros these days do not need to be DBAs, but they must be able to administer and maintain these servers. There are several database systems commonly used: SQL, Oracle, and MySQL.

9. Desktop Imaging

Imaging of desktop systems is a critical skill as companies are shifting to standardized desktops and deployments. Part of this is done to deploy a consistent and secure platform as well as to provide ease of management. There are many imaging programs available, as well as Microsoft’s Windows Deployment Services and imaging utilities.

10. Helpdesk (People Skills)

One of the most critical skills that IT Pros need to learn is how to interact with non-technical people. The Help Desk is the first interaction most users have with the IT department, and it should be a positive experience. IT Pros are very good at their jobs, but sometimes lack the ability to relate to their non-tech colleagues. Users just want their computers fixed or their data recovered; they are not concerned with the processes behind our actions. IT Pros should have some experience working at the Help Desk.

These are some of the most important skills that an IT Pro should know. If you don’t know some of these areas, now is the time to learn them. One thing to keep in mind is that you are your own best career manager! You are the only one who can decide where you want to head your career.

Error when installing MS SQL2008 on windows x64 : The INSTANCESHAREDWOWDIR command line value is not valid. Please ensure the specified path is valid and different than the INSTANCESHAREDDIR path.

May 2nd, 2010

There seems to be quite a few people getting an error installing MS SQL 2008  on Windows x64 machines. The error message is
The INSTANCESHAREDWOWDIR command line value is not valid. Please ensure the specified path is valid and different than the INSTANCESHAREDDIR path.

 It is a bug with the SQL 2008 installer when installed on windows x64 bit machines. the work around is to specify the path when running the installer by doing it from a command prompt or create a shortcut to the setup.exe on the CD and add the following line next to the setup.exe from the command prompt.

e:\setup.exe /action=install /INSTALLSHAREDDIR=”C:\SQLshared\x64″ /INSTALLSHAREDWOWDIR=”C:\SQLshared\x86″ setup proceeds without issues
Assuming e: is your CD-ROM or where the setup files are located. also here we assume you will be installing it on the C:

If you run into any issues please let us know, this worked for every client we that checked in with us. If it does work for you please still let us know so we know that our tips are useful and we would post more tips as we see them work.

Thank you


Setup Windows 2008 Server Core – Networking Commands

April 28th, 2010

When you install windows core server, you first need to configure the network component so that it can talk to the network and then managed remotely which would simplify your administration and reduce your frustration.

I have gathered a lot of these commands for you so you do not have to try to reinvent the wheel like I did.

Here is the start of you Networking and Firewall related commands for Server Core.  To configure the IP address you will have to remember (or learn) Netsh.  In my example I use “Local Area Connection”  The quotes are needed due the spaces.  If you renamed your connection name then you will want to use the new name in its place.

Configure a Static IP Address on Server Core:
Netsh int ipv4 set address Local Area Connection static
Netsh int ipv4 set dnsserver Local Area Connection static primary
Netsh int ipv4 set winsserver Local Area Connection static primary

Configure a Dynamic (DHCP) IP Address on Server Core:
Netsh int ipv4 set address Local Area Connection source=dhcp

Change the name of the network interface on Server Core:
Netsh int set interface name = Local Area Connection newname = Primary Network 

The Windows Firewall is a blessing to some and a curse to others. Either way it is installed by default and you have to understand the commands that are needed to configure the basics and in some cases some advanced commands.

Disable firewall:
netsh firewall set opmode disable

Server Core can be managed by using MMCs from a remote server. However with the firewall being on by default you will have to allow these tools to work remotely.  The first thing to note here is how to translate the MMC Snap-in to Windows Firewall Rule Group.

Event Viewer – Windows Firewall Rule Group – Remote Event Log Management
Services – Windows Firewall Rule Group – Remote Services Management
Shared Folders – Windows Firewall Rule Group – File and Printer Sharing
Task Scheduler – Windows Firewall Rule Group – Remote Scheduled Tasks Management
Reliability and Performance – Windows Firewall Rule Group – Performance Logs and Alerts and Windows Firewall Rule Group – File and Printer Sharing
Disk Management – Windows Firewall Rule Group – Remote Volume Management
Windows Firewall with Advanced Security – Windows Firewall Rule Group – Windows Firewall Remote Management

To enable all of these rules follow use this command:
Netsh advfirewall firewall set rule group=remote administration new enable=yes

Use Perfmon to monitor servers and find bottlenecks

April 14th, 2010

What and When to Measure

Bottlenecks occur when a resource reaches its capacity, causing the performance of the entire system to slow down. Bottlenecks are typically caused by insufficient or misconfigured resources, malfunctioning components, and incorrect requests for resources by a program.

There are five major resource areas that can cause bottlenecks and affect server performance: physical disk, memory, process, CPU, and network. If any of these resources are overutilized, your server or application can become noticeably slow or can even crash. I will go through each of these five areas, giving guidance on the counters you should be using and offering suggested thresholds to measure the pulse of your servers.

Since the sampling interval has a significant impact on the size of the log file and the server load, you should set the sample interval based on the average elapsed time for the issue to occur so you can establish a baseline before the issue occurs again. This will allow you to spot any trend leading to the issue.

Fifteen minutes will provide a good window for establishing a baseline during normal operations. Set the sample interval to 15 seconds if the average elapsed time for the issue to occur is about four hours. If the time for the issue to occur is eight hours or more, set the sampling interval to no less than five minutes; otherwise, you will end up with a very large log file, making it more difficult to analyze the data.

Hard Disk Bottleneck

Since the disk system stores and handles programs and data on the server, a bottleneck affecting disk usage and speed will have a big impact on the server’s overall performance.

Please note that if the disk objects have not been enabled on your server, you need to use the command-line tool Diskperf to enable them. Also, note that % Disk Time can exceed 100 percent and, therefore, I prefer to use % Idle Time, Avg. Disk sec/Read, and Avg. Disk sec/write to give me a more accurate picture of how busy the hard disk is. You can find more on % Disk Time in the Knowledge Base article available at

Following are the counters the Microsoft Service Support engineers rely on for disk monitoring.

LogicalDisk\% Free Space This measures the percentage of free space on the selected logical disk drive. Take note if this falls below 15 percent, as you risk running out of free space for the OS to store critical files. One obvious solution here is to add more disk space.

PhysicalDisk\% Idle Time This measures the percentage of time the disk was idle during the sample interval. If this counter falls below 20 percent, the disk system is saturated. You may consider replacing the current disk system with a faster disk system.

PhysicalDisk\Avg. Disk Sec/Read This measures the average time, in seconds, to read data from the disk. If the number is larger than 25 milliseconds (ms), that means the disk system is experiencing latency when reading from the disk. For mission-critical servers hosting SQL Server® and Exchange Server, the acceptable threshold is much lower, approximately 10 ms. The most logical solution here is to replace the current disk system with a faster disk system.

PhysicalDisk\Avg. Disk Sec/Write This measures the average time, in seconds, it takes to write data to the disk. If the number is larger than 25 ms, the disk system experiences latency when writing to the disk. For mission-critical servers hosting SQL Server and Exchange Server, the acceptable threshold is much lower, approximately 10 ms. The likely solution here is to replace the disk system with a faster disk system.

PhysicalDisk\Avg. Disk Queue Length This indicates how many I/O operations are waiting for the hard drive to become available. If the value here is larger than the two times the number of spindles, that means the disk itself may be the bottleneck.

Memory\Cache Bytes This indicates the amount of memory being used for the file system cache. There may be a disk bottleneck if this value is greater than 300MB.

Memory Bottleneck

A memory shortage is typically due to insufficient RAM, a memory leak, or a memory switch placed inside the boot.ini. Before I get into memory counters, I should discuss the /3GB switch.

More memory reduces disk I/O activity and, in turn, improves application performance. The /3GB switch was introduced in Windows NT® as a way to provide more memory for the user-mode programs.

Windows uses a virtual address space of 4GB (independent of how much physical RAM the system has). By default, the lower 2GB are reserved for user-mode programs and the upper 2GB are reserved for kernel-mode programs. With the /3GB switch, 3GB are given to user-mode processes. This, of course, comes at the expense of the kernel memory, which will have only 1GB of virtual address space. This can cause problems because Pool Non-Paged Bytes, Pool Paged Bytes, Free System Page Tables Entries, and desktop heap are all squeezed together within this 1GB space. Therefore, the /3GB switch should only be used after thorough testing has been done in your environment.

This is a consideration if you suspect you are experiencing a memory-related bottleneck. If the /3GB switch is not the cause of the problems, you can use these counters for diagnosing a potential memory bottleneck.

Memory\% Committed Bytes in Use This measures the ratio of Committed Bytes to the Commit Limit—in other words, the amount of virtual memory in use. This indicates insufficient memory if the number is greater than 80 percent. The obvious solution for this is to add more memory.

Memory\Available Mbytes This measures the amount of physical memory, in megabytes, available for running processes. If this value is less than 5 percent of the total physical RAM, that means there is insufficient memory, and that can increase paging activity. To resolve this problem, you should simply add more memory.

Memory\Free System Page Table Entries This indicates the number of page table entries not currently in use by the system. If the number is less than 5,000, there may well be a memory leak.

Memory\Pool Non-Paged Bytes This measures the size, in bytes, of the non-paged pool. This is an area of system memory for objects that cannot be written to disk but instead must remain in physical memory as long as they are allocated. There is a possible memory leak if the value is greater than 175MB (or 100MB with the /3GB switch). A typical Event ID 2019 is recorded in the system event log.

Memory\Pool Paged Bytes This measures the size, in bytes, of the paged pool. This is an area of system memory used for objects that can be written to disk when they are not being used. There may be a memory leak if this value is greater than 250MB (or 170MB with the /3GB switch). A typical Event ID 2020 is recorded in the system event log.

Memory\Pages per Second This measures the rate at which pages are read from or written to disk to resolve hard page faults. If the value is greater than 1,000, as a result of excessive paging, there may be a memory leak.

Processor Bottleneck

An overwhelmed processor can be due to the processor itself not offering enough power or it can be due to an inefficient application. You must double-check whether the processor spends a lot of time in paging as a result of insufficient physical memory. When investigating a potential processor bottleneck, the Microsoft Service Support engineers use the following counters.

Processor\% Processor Time This measures the percentage of elapsed time the processor spends executing a non-idle thread. If the percentage is greater than 85 percent, the processor is overwhelmed and the server may require a faster processor.

Processor\% User Time This measures the percentage of elapsed time the processor spends in user mode. If this value is high, the server is busy with the application. One possible solution here is to optimize the application that is using up the processor resources.

Processor\% Interrupt Time This measures the time the processor spends receiving and servicing hardware interruptions during specific sample intervals. This counter indicates a possible hardware issue if the value is greater than 15 percent.

System\Processor Queue Length This indicates the number of threads in the processor queue. The server doesn’t have enough processor power if the value is more than two times the number of CPUs for an extended period of time.

Network Bottleneck

A network bottleneck, of course, affects the server’s ability to send and receive data across the network. It can be an issue with the network card on the server, or perhaps the network is saturated and needs to be segmented. You can use the following counters to diagnosis potential network bottlenecks.

Network Interface\Bytes Total/Sec This measures the rate at which bytes are sent and received over each network adapter, including framing characters. The network is saturated if you discover that more than 70 percent of the interface is consumed. For a 100-Mbps NIC, the interface consumed is 8.7MB/sec (100Mbps = 100000kbps = 12.5MB/sec* 70 percent). In a situation like this, you may want to add a faster network card or segment the network.

Network Interface\Output Queue Length This measures the length of the output packet queue, in packets. There is network saturation if the value is more than 2. You can address this problem by adding a faster network card or segmenting the network.

Process Bottleneck

Server performance will be significantly affected if you have a misbehaving process or non-optimized processes. Thread and handle leaks will eventually bring down a server, and excessive processor usage will bring a server to a crawl. The following counters are indispensable when diagnosing process-related bottlenecks.

Process\Handle Count This measures the total number of handles that are currently open by a process. This counter indicates a possible handle leak if the number is greater than 10,000.

Process\Thread Count This measures the number of threads currently active in a process. There may be a thread leak if this number is more than 500 between the minimum and maximum number of threads.

Process\Private Bytes This indicates the amount of memory that this process has allocated that cannot be shared with other processes. If the value is greater than 250 between the minimum and maximum number of threads, there may be a memory leak.

Wrapping Up

Now you know what counters the Service Support engineers at Microsoft use to diagnose various bottlenecks. Of course, you will most likely come up with your own set of favorite counters tailored to suit your specific needs. You may want to save time by not having to add all your favorite counters manually each time you need to monitor your servers. Fortunately, there is an option in the Performance Monitor that allows you to save all your counters in a template for later use.

You may still be wondering whether you should run Performance Monitor locally or remotely. And exactly what will the performance hit be when running Performance Monitor locally? This all depends on your specific environment. The performance hit on the server is almost negligible if you set intervals to at least five minutes.

You may want to run Performance Monitor locally if you know there is a performance issue on the server, since Performance Monitor may not be able to capture data from a remote machine when it is running out of resources on the server. Running it remotely from a central machine is really best suited to situations when you want to monitor or baseline multiple servers.

Xnet utility – excellent tool to remove, rename, uninstall services remotely as well

April 23rd, 2009

If you are looking for a utility to uninstall, start, stop, terminate or even rename a service remotely, the Xnet utility is the best utility to do so.

you can see what it does and how it does it by the instructions below. also you can download this free utility that was made by the genius developer Ruud van Velsen of Microsoft Benelux, keep in mind that Microsoft in no way supports this tool.  I love it and live by it.

 Download Xnet Command Line utility for services

Win32 character-based/commandline utility enabling you to manage local and
remote Windows NT services.

1 general usage.
Usage : XNET <Start  | Stop   | Pause  | Continue | List | Install |
              Remove | Modify | Reboot | Shutdown | Help>

Run XNET HELP <command> for information on the individual commands.

2 starting, pausing, continuing or listing a service.
Usage : XNET <Start | Pause | Continue | List>
             [[\\Server\]ServiceName] [/w:Wait]

Start       – Starts specified service, or lists all running services if no
              service specified.
Pause       – Pauses specified service.
Continue    – Resumes specified service.
List        – Lists all services, or details on specific service.
ServiceName – name of service, optionally preceded by name of remote
              machine (eg : \\REMOTE\MSSQLServer).
Wait        – number of seconds to wait for request to complete (default : 30

Example : XNET START \\HOUND\Spooler
          XNET PAUSE MSSqlserver /w:90
          XNET LIST \\HYENA
          XNET LIST
          XNET LIST NetLogon
3 stopping a service.
Usage : XNET STOP [[\\Server\]ServiceName] [/w:Wait] [/y]

ServiceName – name of service, optionally preceded by name of remote
              machine (eg : \\REMOTE\MSSQLServer).
Wait        – number of seconds to wait for request to complete (default : 30
/y          – Don’t ask for confirmation to stop dependent services.

Example : XNET STOP \\HOUND\Spooler
          XNET STOP MSSqlserver /w:90
          XNET STOP Netlogon /y
4 installing a service.
XNET INSTALL [[\\Server\]ServiceName] [/b:Binary] [/d:Dependencies]
             [/l:LoadOrderGroup] [/n:DisplayName] [/u:User] [/p:Password]
             [/i:Interactive] [/s:StartType]

ServiceName    – name of service, optionally preceded by name of remote
                 machine (eg : \\REMOTE\MSSQLServer).
Binary         – Name of executable.
Dependencies   – Dependencies of service.
LoadOrderGroup – LoadOrderGroup of service.
DisplayName    – ‘Long’ name of service (aka DisplayName).
User           – name of (domain) user account to assign to service. Specify
                 ‘LocalSystem’ to assign system account.
Password       – Password for service.
Interactive    – specify Yes or No to allow service to interact with desktop.
StartType      – indicates when a service will be started. Possible values
                 are ‘AUTO’ (started at system startup), ‘DEMAND’ (started
                 at user request) and ‘DISABLED’.

Example : XNET INSTALL \\HOUND\MyService /b:C:\WIN32\MS.EXE /u:LocalSystem
          XNET INSTALL MyService /b:C:\WIN32\MS.EXE /u:RuudV /p:password
          XNET INSTALL MyService /b:C:\WIN32\MS.EXE /u:HiYa\There /p:right
5 modifying a service.
XNET MODIFY [[\\Server\]ServiceName] [/u:User] [/p:Password] [/b:Binary]
             [/d:Dependencies] [/l:LoadOrderGroup] [/n:DisplayName]

ServiceName    – name of service, optionally preceded by name of remote
                 machine (eg : \\REMOTE\MSSQLServer).
User           – name of (domain) user account to assign to service. Specify
                 ‘LocalSystem’ to assign system account.
Password       – Password for service.
Binary         – Name of executable.
Dependencies   – Dependencies of service.
LoadOrderGroup – LoadOrderGroup of service.
DisplayName    – ‘Long’ name of service (aka DisplayName).
Interactive    – specify Yes or No to allow service to interact with desktop.
StartType      – indicates when a service will be started. Possible values
                 are ‘AUTO’ (started at system startup), ‘DEMAND’ (started
                 at user request) and ‘DISABLED’.

Example : XNET MODIFY \\HOUND\MyService /u:SE\User1 /p:NewPass
          XNET MODIFY \\HOUND\MyService /u:LocalSystem
          XNET MODIFY MyService /n:FancyName
6 removing a service.
Usage : XNET REMOVE [[\\Server\]ServiceName]

ServiceName – name of service, optionally preceded by name of remote
              machine (eg : \\REMOTE\MSSQLServer).
/y          – Don’t ask for confirmation of remove.

Example : XNET REMOVE SampleService
7 rebooting/shutting down Windows NT.
XNET <Reboot | Shutdown> [\\server] [/w:Wait] [/m:Message] [/f] [/y]

Reboot      – Reboots specified server, or local machine if no server
Shutdown    – Shuts down specified server, or local machine if no server
Message     – Warning/message to display on specified server during countdown.
Wait        – Wait xx seconds for request to complete (default : 30 seconds)
/f          – Force applications closed (don’t allow ‘FileSave’ dialogs).
/y          – Don’t ask for confirmation of request.

Example : XNET REBOOT \\HOUND /y
          XNET SHUTDOWN /w=120
          XNET SHUTDOWN /f
1 Current version = 1.04

2 XNet was developed by Ruud van Velsen of Microsoft Benelux. The program
  is not officially supported by Microsoft, but any feedback is welcome.

Control your email spam and avoid getting viruses via e-mail by using a premium anti-spam service for very affordable price

February 20th, 2009

Do you receive a lot of spam in you mailbox, have you tried a lot of different software and webservices to get rid of the massive spam email messages and failed, well you do not have to spend top dollars any more to get your inbox back to under control, here is a news release from a webhosting company that offers you spam control service for $10/month per domain (not per mailbox)… read below 

OnlineRack Webhosting provider (division or IT-ETC) has gone public with its new state of the art email spam/virus filtering service. Ahmed Amin (Co-founder) of OnlineRack stated that currently processes 44million messages a month for all of IT-ETC clients with filtering rate of 90 to 95% of flagged spam and virus messages. this successful filtering rate has been steady for months. Ahmed Amin also stated that they have complete load balancing and fail over in place. The Spam/Virus filter service is now offered to the public, no contract required and the service fee is only $10 per domain per month. Ahmed Amin stated, this service is priced per domain because we feel it is easier budgeted that way and makes it easy for the client to afford such very much needed service. there is no reason to have to go through 50 to 80 spam messages daily and risk over looking a critical email just because it got deleted by accident. The website OnlineRack has not yet been updated with this great news, however it should be updated in the next few days as launches its new trendy website, However, if you are intrested you may contact or contact even for more info

Failed to access IIS metabase

January 2nd, 2009

This error was happening when I first tried using ASP.NET on the XP Machines we have in the office.  I tried adjusting the permission using MetaAcl Tool, but that did not do it for me.  After further research on “Failed to access IIS metabase” error it appeared that when .Net is installed prior to installing IIS this error will occur.

To fix the problem, just run the following command to reinstall APS.NET and reupdated the permissions:

%windir%\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis.exe -i

 If that does not work, you can try adjusting the permissions as shown in the following Microsoft article:

Error the system administrator has set policies to prevent this installation when installing or upgrading to vmware 2.0 on windows 2003

October 6th, 2008

Some people have reported they ran into an issue when trying to upgrade to VMware 2.0 and the error was during the install stating: Error the system administrator has set policies to prevent this installation  when installing.

The best fix or work around is this, it worked for me:

 Click Start -> Control Panel

  1. Open Administrative Tools
  2. Open Local Security Settings
  3. Click Software Restriction Policies
    1. If no software restrictions are defined, right click the Software Restriction Policies node and select New Software Restriction Policy
  4. Double click Enforcement
  5. Select “All users except local administrators”
  6. Click OK
  7. Reboot the machine
  8. Install VMWare 2.0 and it should proceed with no issues.

Good Luck 🙂

install Windows Server 2003 management tools on a Windows Vista-based computer – Error MMC could not create the snap-in.

October 3rd, 2008


Microsoft Management Console (MMC) could not create the snap-in

This issue occurs because the Administration Tools Pack is not installed by a user who has administrative user rights. New security enhancements in Windows Vista require elevated user rights when a .dll file is registered. Therefore, Windows Vista security enhancements require that certain snap-ins are installed only by a user who has local administrative user rights.

MMC could not create the snap-in

To resolve this issue, register the Windows Server 2003 management tools on a domain user account. To do this, follow these steps:

1. Log on to Windows Vista as a user who has local administrator permissions.
2. Create the RegisterAdminPak.cmd script. To do this, follow these steps:

a. Start Notepad, and then open a blank document.
b. Paste the following code to the document in Notepad:

@echo off  REM RegisterAdminPak.cmd REM (c) 2006 Microsoft Corporation.  All rights reserved.
set filelist=adprop.dll azroles.dll azroleui.dll ccfg95.dll
set filelist=%filelist% certadm.dll certmmc.dll certpdef.dll certtmpl.dll
set filelist=%filelist% certxds.dll cladmwiz.dll clcfgsrv.dll clnetrex.dll
set filelist=%filelist% cluadmex.dll cluadmmc.dll cmproxy.dll cmroute.dll
set filelist=%filelist% cmutoa.dll cnet16.dll debugex.dll dfscore.dll
set filelist=%filelist% dfsgui.dll dhcpsnap.dll dnsmgr.dll domadmin.dll
set filelist=%filelist% dsadmin.dll dsuiwiz.dll imadmui.dll lrwizdll.dll
set filelist=%filelist% mprsnap.dll msclus.dll mstsmhst.dll mstsmmc.dll
set filelist=%filelist% nntpadm.dll nntpapi.dll nntpsnap.dll ntdsbsrv.dll
set filelist=%filelist% ntfrsapi.dll rasuser.dll rigpsnap.dll rsadmin.dll
set filelist=%filelist% rscommon.dll rsconn.dll rsengps.dll rsjob.dll
set filelist=%filelist% rsservps.dll rsshell.dll rssubps.dll rtrfiltr.dll
set filelist=%filelist% schmmgmt.dll tapisnap.dll tsuserex.dll vsstskex.dll
set filelist=%filelist% w95inf16.dll w95inf32.dll winsevnt.dll winsmon.dll
set filelist=%filelist% winsrpc.dll winssnap.dll ws03res.dll
for %%i in (%filelist%) do ( 	echo Registering %%i ... 	regsvr32 /s %%i  )
echo. Echo Command Completed

c. On the File menu, click Save.
d. In the Save as type box, click All Files, type C:\Users\UserAccountName\RegisterAdminPak.cmd in the File name box, and then click Save.Notes
UserAccountName represents the folder name of the user who is currently logged in.You must run this script in Windows Vista only.
3. Run RegisterAdminPak.cmd from an elevated command prompt. To do this, follow these steps:

a. Click Startthe Start button, click All Programs, click Accessories, right-click Command Prompt, and then click Run as administrator.User Account Control permission If you are prompted for an administrator password or for confirmation, type your password, or click Continue.
b. At the command prompt, type the following command, and then press ENTER.Note If you are running a 64-bit version of Windows Vista, type cd %systemroot%\syswow64 before you run the following command.


How to redirect traffic to another domain aka 301 redirect

June 5th, 2008

301 Redirect

301 redirect is the most efficient and Search Engine Friendly method for webpage redirection. It’s not that hard to implement and it should preserve your search engine rankings for that particular page. If you have to change file names or move pages around, it’s the safest option. The code “301” is interpreted as “moved permanently”.

You can Test your redirection with Search Engine Friendly Redirect Checker

Below are a Couple of methods to implement URL Redirection

IIS Redirect

  • In internet services manager, right click on the file or folder you wish to redirect
  • Select the radio titled “a redirection to a URL”.
  • Enter the redirection page
  • Check “The exact url entered above” and the “A permanent redirection for this resource”
  • Click on ‘Apply’

ColdFusion Redirect

<.cfheader statuscode=”301″ statustext=”Moved permanently”>
<.cfheader name=”Location” value=””>

PHP Redirect

Header( “HTTP/1.1 301 Moved Permanently” );
Header( “Location:” );

ASP Redirect

<%@ Language=VBScript %>
Response.Status=”301 Moved Permanently”
Response.AddHeader “Location”,””

ASP .NET Redirect

<script runat=”server”>
private void Page_Load(object sender, System.EventArgs e)
Response.Status = “301 Moved Permanently”;

JSP (Java) Redirect

response.setHeader( “Location”, “” );
response.setHeader( “Connection”, “close” );

CGI PERL Redirect

$q = new CGI;
print $q->redirect(“”);

Ruby on Rails Redirect

def old_action
headers[“Status”] = “301 Moved Permanently”
redirect_to “”

Redirect Old domain to New domain (htaccess redirect)

Create a .htaccess file with the below code, it will ensure that all your directories and pages of your old domain will get correctly redirected to your new domain.
The .htaccess file needs to be placed in the root directory of your old website (i.e the same directory where your index file is placed)

Options +FollowSymLinks
RewriteEngine on
RewriteRule (.*)$1 [R=301,L]

Please REPLACE in the above code with your actual domain name.

In addition to the redirect I would suggest that you contact every backlinking site to modify their backlink to point to your new website.

Note* This .htaccess method of redirection works ONLY on Linux servers having the Apache Mod-Rewrite moduled enabled.

Redirect to www (htaccess redirect)

Create a .htaccess file with the below code, it will ensure that all requests coming in to will get redirected to
The .htaccess file needs to be placed in the root directory of your old website (i.e the same directory where your index file is placed)

Options +FollowSymlinks
RewriteEngine on
rewritecond %{http_host} ^ [nc]
rewriterule ^(.*)$$1 [r=301,nc]

Please REPLACE and with your actual domain name.

Note* This .htaccess method of redirection works ONLY on Linux servers having the Apache Mod-Rewrite moduled enabled.

How to Redirect HTML

Please refer to section titled ‘How to Redirect with htaccess’, if your site is hosted on a Linux Server and ‘IIS Redirect’, if your site is hosted on a Windows Server.

There is a good resource site that talks into similar details about domain forwarding, search engine friendly methods and so forth. check it out 


IP address upgrade from IPv4 to IPv6

January 14th, 2008

It’s about time for an IP address upgrade, don’t you think?! Well, before I go any further, if you’re not sure, an IP address is a unique address that is assigned to a network device by the network. Every computer that connects to a network or the Internet is assigned an IP address. It basically allows that computer to communicate with the network or the Internet.

The current IP address standard, called IPv4, uses 32-bits, which looks something like this: This IP address standard was created in 1981 when the Internet was just a baby. The early creators of the Internet did not believe it would become as large as it is today, especially since it was originally designed only for a few universities and the United States Government. Over time, many large corporations and even the U.S. Government have come to realize that there is a large need to switch over to a new IP standard. The new version will be called IPv6 and it will use 128-bits.

 The IPv6 IP address looks something like this: 2001:0db8:85a3:08d3:1319:8a2e:0370:7334.On August 2, 2005, the Federal Government of the United States issued a memorandum, stating that all Federal Government agencies will transition their network backbones to IPv6 by June 30, 2008. The IPv4 version only allows for four billion IP addresses, which greatly limits the number of devices that can be given a unique, globally routable location on the Internet. The IPv4 standard has slowed the growth of the Internet worldwide and it constricts the amount of computers and other devices that can be connected to each other via the Internet. On the other hand, the IPv6 standard allows for an almost unlimited number of IP addresses. In all actuality, the IPv6 allows for over 300,000,000,000,000,000,000,000,000,000,000,000,000 different addresses. (And no, I’m not kidding!) The movement from IPv4 to the new IPv6 will allow us users to have more technology in our lives, because we will now be able to assign more IP addresses to more devices. Soon, mobile phones, televisions and even toasters will be assigned IP addresses! Imagine this: you’re leaving work and you would like a hot cup of coffee when you arrive home. With the IPv6, you would be able to do much more.

This transition is not going to be easy or simple, it will require a lot of manpower professionals to get involved and oversee these projects.

Error code 2738 When Installing iTunes + Quicktime on Windows Vista

January 7th, 2008

I just downloaded the latest iTumes version, but when I tried to install it, I got the following error: 

iTunes Logo

The installer has encountered an unexpected error installing this package. This may indicate a problem with this package. The error code is 2738.

After research I found the following link:

The solution was to re-register vbscript.dll.  I also selected “Run as Administrator” option when I reran after reregistering the dll.

To register the dll, please do the following:

  1. On the Start menu, click Run.
  2. In the “Open” field, enter the following command and click OK.
    regsvr32 vbscript.dll
  3. A message should appear stating that the “DllRegisterServer in C:\WINDOWS\system32\vbscript.dll succeeded.”
  4. Click OK and try installing iTunes or QuickTime again.

Thanks for Apple Support for the posting…

FREE eBay Auction Sniper Service

January 3rd, 2008

Have you ever wondered why when you are trying to bid on an otem on ebay and you are the highest bidder then all of a sudden you right before the auction ends, someone comes in and snatches it from you whether it is in the middle of the day or middle of the night, it just happens. The chances are, the person overbidding you is not really sitting in front of the computer, all what this person did is use a sniping program or a website service like Gixen where you enter the ebay item number and the highest amount you are trying to bid and what the website service do is go out a few seconds before the auction ends and place the bid for you. This way you avoid getting into bidding war, you do not have to stick around the computer to find out make sure no one overbids you, and lastly, you bid like a pro.

We have evaluated different programs and website services that offer snipping services, truth told, the real nice one we liked was Gixen. It is a website service that is offered to the public for free and you can bid on as many items as you want. it uses SSL for encypting and securing the data transmission.

Other competitor websites and programs would charge you a fixed percentage of won items or insertion fees.

 I have been using Gixen for a few months and have been very pleased with the service therefore, have decided to share the wealth about this free ebay sniping website service.

PHP error 5.2.4 Getting error “Error in my_thread_global_end(): 1 threads didn’t exit”

October 25th, 2007

We have noticed a few web server admins to be getting an error message Getting error “Error in my_thread_global_end(): 1 threads didn’t exit” when running php on IIS windows servers in CGI. the issue is caused by libmysql.dll found in php directory. The file size for the libmysql.dll was 1.94 MB (2,035,712 bytes).

To fix the issue and clear the error message, you must replace libmysql.dll with an earlier version from release 5.2.1 of PHP.

I noticed many people were not able to get their hands on it so we have uploaded it to our server to make it easily availble.
Download php mysql libmysql.dll

VMWare Host and Guest Cannot Communicate Over Network Shares on Dell PowerEdge and Broadcom TOE

October 10th, 2007

Many people have encoutnered issues with the TOE on the Dell PowerEdge servers (especially the 2900) where it caused weird issues with networking components, most noticeable on VMware boxes and ISA servers.

A few days ago I had the same issue with our PowerEdge 2900 after I upgraded to the latest drivers and firmware, the server was running windows 2003 with SP2 loaded on it, once the server was rebooted, the host OS could not access the guest systems via UNC or RDP ( Remote Desktop) however I was able to ping the guest OS by IP and common name with no issues.

after researching the issue, I discovered, it is a problem with the Broadcom Network Cards, Windows 2003SP2 and the TOE (Tcpip Offload Engine)

I tired many different thigs except uninstalling the SP2 from the Host OS as it was not a fix for me (not good enough solution) so what I did was opened up the case and removed the TOE component which is like a little white adapter that plugs into the motherborad of the 2900 PowerEdge server. The connector itself is like a phone plug. I have attached a picture of the adapter.

To remove the TOE adapter, slide open the case, look in the center next to the CPU, there will be a white chip (looks like a one of those tranceievers) sticking out and labeled TOE 2) Just unplug it (you would unplug it just like how you unplug a phone from a phone jack).

Once I removed the TOE adapter from the server and powered it back on, everything worked like a charm. I phoned Dell and talked to their senior techs and they did elaborate that this was a problem they have been running into recenlty and this was the right fix.

I hope this helps you out. if it does please post to let me know.  

TOE Adapter for Dell PowerEdge 2900

TOE Dell PowerEdge adapter

Video Tutorials for Share Point 2007

October 3rd, 2007

Microsoft Share Point 2007 is getting hotter and hotter every day. Knowing Share Point 2007 is goldmine due to the services and features it offers. Yet with the high demand on it, many IT Guys lack the knowledge and understanding of its capabilities and expandabilities.  We did our homework and searched for good resources and found this free video tutorial on Share Point 2007. It is by far one of the best resrouces we have found on the internet for Microsoft Sharepoint 2007.

the website is: Microsoft Share Point 2007 Video Tutorial

Command check computer specs and uptime in windows XP

August 26th, 2007

Ever had a doubt what utilities do what. Windows XP has so many built in features and utilities that most sysadmins do not bother to utilize as they try to find a way of getting by with the same old commands (like ipconfig and stuff) they do not realize that newer OSes often include more utilities that could help in streamlining the support daily tasks and troubleshooting.

Try this command which is built in into Microsoft Windows XP.  

in command prompt, type the following     systeminfo

it will give you good useful information about system configs, system uptime, original install date (windows xp installation) hotfixes installed, NIC card info and so forth. it can be run on another machine remotely.

Here is a systeminfo parameter:

C:\DOCUME~1\aamin>systeminfo /?

SYSTEMINFO [/S system [/U username [/P [password]]]] [/FO format] [/NH]

    This command line tool enables an administrator to query for basic
    system configuration information.

Parameter List:
    /S      system           Specifies the remote system to connect to.

    /U      [domain\]user    Specifies the user context under which
                             the command should execute.

    /P      [password]       Specifies the password for the given
                             user context. Prompts for input if omitted.

    /FO     format           Specifies the format in which the output
                             is to be displayed.
                             Valid values: “TABLE”, “LIST”, “CSV”.

    /NH                      Specifies that the “Column Header” should
                             not be displayed in the output.
                             Valid only for “TABLE” and “CSV” formats.

    /?                       Displays this help/usage.

    SYSTEMINFO /S system
    SYSTEMINFO /S system /U user
    SYSTEMINFO /S system /U domain\user /P password /FO TABLE
    SYSTEMINFO /S system /FO CSV /NH

I hope you find this tool useful and helpful. If so let us know and we will post more.

If you have tips to share, please do not hesitate to contribute.

Goodlink stops syncing contacts on Treo Palm or other PDA devices

August 25th, 2007

If you have a device running Good Messaging (formerly known as GoodLink) and it stops syncing, the first thing to do is make sure you have a data connection by attempting to go out to an internet site (such as from your device. If that doesn’t work, then contact your wireless provider, because your data connection is not available or you have no data coverage where you are. If you can get out to website, you probably just need to reset the Goodlink software.

 Here are instructions for to reset your goodlink software on a treo or a PDA device:

  1. On your wireless device, go into Good Preferences | About Good Mobile Messaging
  2. Type in “debug” without quotes. You will not see the text on the screen as you type, but it will open a hidden command prompt.
  3. When a command prompt window opens, type in “reprov” without quotes and press the enter key.
  4. You will be prompted that this will erase all data from the handheld. This only refers to data synced with the Good software. Type in “yes” without quotes and press the enter key.
  5. Your device will restart and the Good software will resync all of your emails/calendar/contacts/etc.

This usually does the trick and all should work like a charm.

I hope this tip helped you out.

Computer Wholesaler Network

August 20th, 2007

Computer market is becoming more and more competitive which keeps the prices down for all consumer business. However, the market is much more competitve in the second hand computers and wholesalers. Many of these wholesalers are dealing in the gray market. We found a great directory where these computer wholesalers and drop shippers are listed and actively interact together releasing their hottest inventory along with their contact info.

if you are intrested in buying second hand computers or brand new computer  from the gray market area make sure you check out the Computer Wholesalers Directory

RSS Readers Sharp Reader

August 13th, 2007

I remember back in the days when I had two or three favorite sites, but nowadays, with so many different topics, gadget news, website deals, and more, it is hard to keep visit all of them more often, this is where RSS comes to the rescue and offer you the ease of keeping up with all the sites in one simple application with highlights of each website… Not all website have RSS capability, but it is becoming more and more common.

There are two main ways to get the RSS feeds, the first way is through a web application (kind of like different Google Reader where you have to have your web browser open and logged in to your Google account, Yahoo, and MSN offer it too) or a desktop application where you can open it up like Microsoft Outlook… I have been through a few RSS readers and found Sharp Reader to be the best one out there due to its simplicity, new RSS notifications, and most of all, stability (the coolest thing, it is FREE).

Download Sharp Reader Software RSS Reader

PST Password Recovery for Microsoft Outlook Free

August 13th, 2007

So many passwords, only a few can be remembered, the ones that are hard to remember usually are the ones that are seldom used. This is the case with my friend Jane who setup a password on her PST file a few months ago and now needed to get some emails out of it, the only problem is she could not open it as she did not know the password.

Thankfully, when she called me, I had the PST Recover Password utility available and was able to crack it open. It is a free utility, almost impossible to find one like it for free.

Download Recover PST Password for Microsoft Outlook

Online Training Library Courses for $30/month

August 11th, 2007

 There are many online training sites out there these days that offer access to their entire training library for monthly subscribtion. We have done an extensive research on which one has the most selections, more advanced courses and offer latest products.   Virtual Training Company (VTC) by far stood out in all of our comparisons. We compared it to which was pretty much the same price but fewer selections.

VTC Online University is one of the most valuable training resources on the web . For just US$30* per month you will have access to in-depth training on hundreds of today’s most sought-after applications, with over 43,327 narrated QuickTime movies. (And yes, you do have access to ALL VTC VTC Logocontent.) These can be streamed over any connection to the Internet directly to your computer


3 Ways To Lock Windows XP

August 10th, 2007

To lock a Windows XP workstation you can use of the 2 methods below:

 1)  Keyboad Combination:  You can lock your Windows XP workstation by Pressing the Windows key + the letter L to lock.

2)  DOS Command: You can also lock a Windows XP workstation by typing the following DOS command,

rundll32.exe user32.dll, LockWorkStation

This command can be execute by either click on Start -> Run and typing the in the command, or by creating a shortcut.

3)  Normal way: Click on Ctrl + Alt + Del, and select “Lock”

Honest and independant web hosting review website

August 10th, 2007

It is very important to search and research web hosting companies before signing up with one. after all it is a service you are receiving from them let alone your data is housed with them. I found web hosting review to be an honest review website on web hosting companies, completely unbiased and straight to the point. check them out.

Free utility to import N2K file

August 10th, 2007

Microsoft Outlook 2003 and Microsoft Outlook 2007 do not store email addresses you correspond to via email in your address book, what it does, it stores all these email addresses in what is called the cached file called N2K file. The N2K  file cannot be read via a regular text editor nor can it be directly imported into outlook contacts.

Many users get bumped when they find this out, (especially noticeable when they receive a new computer).

The utility we have can open up the N2K file and export all the addresses into a CSV file. Best of all, it is free. 🙂

the N2K file can be located at the following path C:\Documents and Settings\(Your USERNAME)\Application Data\Microsoft\Outlook\Outlook.NK2

Download the N2K tool.

If you have similar tools or cool tools please share it with us…. we will credit you for it

Attached is a utility that would extract the nk2 files into csv (so they can be imported into address book) 

Once in a CSV, you can easily delete invalid exchange addresses and maintain the smtp addresses.

Please let me know if you have any questions.

it is a beta version but has always worked for me.  😉

Control ALT Delete in microsoft terminal windows session

August 10th, 2007

Have you ever wanted to get the control alt delete in windows terminal session and wondered how it can be done (may be to get task manager, change password, lock workstation… etc

In the windows terminal session, press  CTRL ALT END  instead of CTRL ALT Del and that should bring it up for you.

Cool tip huh…. 🙂

DOS IF command to check file if exist

August 10th, 2007

Simple opertations can seem easy but in some instances it is challenging.

Many network administrators can find this useful when deploying new files to the company computer using batch files.

Here is some good info on how to use the if statement.

Performs conditional processing in batch programs.

IF [NOT] ERRORLEVEL number command
IF [NOT] string1==string2 command
IF [NOT] EXIST filename command

  NOT               Specifies that Windows XP should carry out
                    the command only if the condition is false.

  ERRORLEVEL number Specifies a true condition if the last program run
                    returned an exit code equal to or greater than the number

  string1==string2  Specifies a true condition if the specified text strings

  EXIST filename    Specifies a true condition if the specified filename

  command           Specifies the command to carry out if the condition is
                    met.  Command can be followed by ELSE command which
                    will execute the command after the ELSE keyword if the
                    specified condition is FALSE

The ELSE clause must occur on the same line as the command after the IF.  For

    IF EXIST filename. (
        del filename.
    ) ELSE (
        echo filename. missing.

The following would NOT work because the del command needs to be terminated
by a newline:

    IF EXIST filename. del filename. ELSE echo filename. missing

Nor would the following work, since the ELSE command must be on the same line
as the end of the IF command:

    IF EXIST filename. del filename.
    ELSE echo filename. missing

The following would work if you want it all on one line:

    IF EXIST filename. (del filename.) ELSE echo filename. missing

If Command Extensions are enabled IF changes as follows:

    IF [/I] string1 compare-op string2 command
    IF CMDEXTVERSION number command
    IF DEFINED variable command

where compare-op may be one of:

    EQU – equal
    NEQ – not equal
    LSS – less than
    LEQ – less than or equal
    GTR – greater than
    GEQ – greater than or equal

and the /I switch, if specified, says to do case insensitive string
compares.  The /I switch can also be used on the string1==string2 form
of IF.  These comparisons are generic, in that if both string1 and
string2 are both comprised of all numeric digits, then the strings are
converted to numbers and a numeric comparison is performed.

The CMDEXTVERSION conditional works just like ERRORLEVEL, except it is
comparing against an internal version number associated with the Command
Extensions.  The first version is 1.  It will be incremented by one when
significant enhancements are added to the Command Extensions.
CMDEXTVERSION conditional is never true when Command Extensions are

The DEFINED conditional works just like EXISTS except it takes an
environment variable name and returns true if the environment variable
is defined.

%ERRORLEVEL% will expand into a string representation of
the current value of ERRORLEVEL, provided that there is not already
an environment variable with the name ERRORLEVEL, in which case you
will get its value instead.  After running a program, the following
illustrates ERRORLEVEL use:

    goto answer%ERRORLEVEL%
    echo Program had return code 0
    echo Program had return code 1

You can also using the numerical comparisons above:

    IF %ERRORLEVEL% LEQ 1 goto okay

%CMDCMDLINE% will expand into the original command line passed to
CMD.EXE prior to any processing by CMD.EXE, provided that there is not
already an environment variable with the name CMDCMDLINE, in which case
you will get its value instead.

%CMDEXTVERSION% will expand into a string representation of the
current value of CMDEXTVERSION, provided that there is not already
an environment variable with the name CMDEXTVERSION, in which case you
will get its value instead.

BlackBerry Wireless syncronization disappeared for Contacts or email

August 10th, 2007

Blackberry users sometimes encounter a weird issue with their blackberries where the wireless syncronization disappears from the contacts or messages menu (where you can turn it off or on). To fix it simply go into the service book (under Options) and delete the Desktop CMIME) once deleted you can go into the BES server and send Service Book again and that should fix it.  This also fixes the issue when a user cannot send emails where the send option disappears. this happens because the CMIME gets corrupted.

If the issue is with Wireless Syncronization, then you want to delete the Desktop CICAL which is responisble for calendar wireless syncronization.

I hope you find this helpful.