Welcome Message

"The difference between a successful person and others is not a lack of strength,
not a lack of knowledge, but rather a lack in will."
-Vince Lombardi

July 23, 2009

Managing Windows XP Services locally/remotely using Service Controller Command SC

General Starting and Stopping the service can be accomplished using the

net stop <service name>

net start <service name>

 

A full list of the exact services is found in the registry (run regedit.exe) under the HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services key.

 

Alternatively, you can perform the stop and start using the name that is showed in the Services Control Panel applet by putting the name in quotes, i.e.

net stop "<service>"

net start "<service>"

 

 

Managing Windows XP Services with the Service Controller Command SC

 

The Service Controller utility SC is a powerful command-line utility for managing Windows services. Its various capabilities and functions are discussed here.

Many processes and functions of the Windows XP operating system and other software are classified under the general rubric of “services”. Managing services with the graphical facility called the Services Console is discussed at a sister site. In addition to a GUI method of managing services, Windows XP also has a powerful command-line utility.This utility, the Service Controller, is opened by entering "sc' into the command prompt and contains a large assembly of subcommands that we will survey.

 

The command-line method of managing services has the advantage of being available for scripts. It also allows for quickly stopping and starting services for troubleshooting purposes. Systems administrators use it for managing services on networks and for very detailed configuration. For the average PC user, it provides a quick and easy way to turn services on and off to see how system performance is affected.

 

 

DESCRIPTION:

        SC is a command line program used for communicating with the NT Service Controller and services.

 

Service Control - Create, Start, Stop, Query or Delete any Windows SERVICE. The command options for SC are case sensitive.

 

Syntax

      SC [\\server] [command] [service_name] [Options]

 

Key

   server       : The machine where the service is running

 

   service_name : The KeyName of the service, this is often but not always the same as the DisplayName shown in Control Panel, Services. You can get the KeyName by running: SC GetKeyName <DisplayName>

 

USAGE:

        sc <server> [command] [service name] <option1> <option2>...

 

        The option <server> has the form "\\ServerName"

        Further help on commands can be obtained by typing: "sc [command]"

        Commands:

          query-----------Queries the status for a service, or

                          enumerates the status for types of services.

          queryex---------Queries the extended status for a service, or

                          enumerates the status for types of services.

          start-----------Starts a service.

          pause-----------Sends a PAUSE control request to a service.

          interrogate-----Sends an INTERROGATE control request to a service.

          continue--------Sends a CONTINUE control request to a service.

          stop------------Sends a STOP request to a service.

          config----------Changes the configuration of a service (persistant).

          description-----Changes the description of a service.

          failure---------Changes the actions taken by a service upon failure.

          sidtype---------Changes the service SID type of a service.

          qc--------------Queries the configuration information for a service.

          qdescription----Queries the description for a service.

          qfailure--------Queries the actions taken by a service upon failure.

          qsidtype--------Queries the service SID type of a service.

          delete----------Deletes a service (from the registry).

          create----------Creates a service. (adds it to the registry).

          control---------Sends a control to a service.

          sdshow----------Displays a service's security descriptor.

          sdset-----------Sets a service's security descriptor.

          showsid---------Displays the service SID string corresponding to an arbitrary name.

          GetDisplayName--Gets the DisplayName for a service.

          GetKeyName------Gets the ServiceKeyName for a service.

          EnumDepend------Enumerates Service Dependencies.

 

        The following commands don't require a service name:

        sc <server> <command> <option>

          boot------------(ok | bad) Indicates whether the last boot should

                          be saved as the last-known-good boot configuration

          Lock------------Locks the Service Database

          QueryLock-------Queries the LockStatus for the SCManager Database

 

EXAMPLE:

        sc start MyService

 

Would you like to see help for the QUERY and QUERYEX commands? [ y | n ]: y

QUERY and QUERYEX OPTIONS :

        If the query command is followed by a service name, the status

        for that service is returned.  Further options do not apply in

        this case.  If the query command is followed by nothing or one of

        the options listed below, the services are enumerated.

    type=    Type of services to enumerate (driver, service, all)

             (default = service)

    state=   State of services to enumerate (inactive, all)

             (default = active)

    bufsize= The size (in bytes) of the enumeration buffer

             (default = 4096)

    ri=      The resume index number at which to begin the enumeration

             (default = 0)

    group=   Service group to enumerate

             (default = all groups)

 

SYNTAX EXAMPLES

sc query                - Enumerates status for active services & drivers

sc query messenger      - Displays status for the messenger service

sc queryex messenger    - Displays extended status for the messenger service

sc query type= driver   - Enumerates only active drivers

sc query type= service  - Enumerates only Win32 services

sc query state= all     - Enumerates all services & drivers

sc query bufsize= 50    - Enumerates with a 50 byte buffer.

sc query ri= 14         - Enumerates with resume index = 14

sc queryex group= ""    - Enumerates active services not in a group

sc query type= service type= interact - Enumerates all interactive services

sc query type= driver group= NDIS     - Enumerates all NDIS drivers

 

Examples for remote sc commands:

 

sc \\ie10nt3ksvm069 query type= service state= all >> C:\allprocesses.txt

 

sc \\ie10nt3ksvm069 getkeyname "DNS Client"

 

sc \\ie10nt3ksvm069 getdisplayname "Dnscache"

 

sc \\ie10nt3ksvm069 qc "Dnscache"

 

sc qc "Dnscache"

 

SC query messenger | FIND "STATE"

 

SC QUERY state= all |FINDSTR "DISPLAY_NAME STATE"

 

SC QUERY state= all |FINDSTR "SERVICE_NAME DISPLAY_NAME STATE"

 

NOTE: Be sure to check the spaces state= all it should not be state=all or state = all or state =all

 

Examples:

 

 SC GetKeyName "task scheduler"

 SC GetDisplayName schedule

 SC start schedule

 SC QUERY schedule

 SC QUERY type= driver

 SC QUERY state= all |findstr "DISPLAY_NAME STATE" >svc_installed.txt

 SC \\myServer CONFIG myService obj= LocalSystem password= mypassword

 SC CONFIG MyService binPath=c:\myprogram.exe obj=".\LocalSystem" password=""  Watch out for extra spaces:

SC QUERY state= all Works

SC QUERY sTate =all Fails!

 

How to get the current date and time in excel

If you want to get the current date and time in a cell then you can do one of the following:

1. To get the current date only use the TODAY() function.

Syntax

=TODAY()

2. To get the current date and time use the NOW() function.

Syntax

=NOW()

3. To get the current time only use the NOW() function, and then format the cell to display time only.

Note:

The TODAY() and NOW() functions will update the date and time whenever the worksheet is calculated. I.e. their values are variable.

To insert static date and/or time in a cell:

1. For current date: Select a cell, press CTRL then enter “;” (semicolon character).

2. For current time: Select a cell, press CTRL+SHIFT then enter “;”.

3. For current date and time: Select a cell, press CTRL then enter “;” to get the date. Enter SPACE, press CTRL+SHIFT then enter “;” to get the time.

You can also use Copy/Paste special. For example to To insert static date and time in a cell:

1. Enter “=NOW()” in a cell and hit enter. You will get the current date and time

2. Right click on the cell and select Copy.

3. Right click on the same cell and select Paste Special, then select Paste Values.

 

July 20, 2009

Google Search Tip - Filter Google Results Datewise or Weekwise or Monthwise or Yearwise

Filter Google Results Datewise/Weekwise/Monthwise/Yearwise

 

Filtering Google searches by time periods is one of the many hidden features of Google. By manipulating the search URL, you can trigger Google’s filter by data dropdown box to appear. With this drop down box, you can easily select what time dates you want Google to filter the results.

 

I often want to search for updated news on a common search term. For example, say you wanted to search for Site4Sites news for the last 24 hrs. Using this little Google hack, you can focus your search over whichever time period you want.

 

First go to http://www.google.com and search for your search term. I'm going to use "Site4Sites" as my example.

 

Obviously, I receive the highest ranked searches all-time for Site4Sites.

 

First Window: - http://www.google.com/search?hl=en&q=Site4Sites&btnG=Google+Search

 

Next, Open New window, just add &as_qdr=d to the end of the URL and press ENTER.

 

Second Window: - http://www.google.com/search?hl=en&q=Site4Sites&btnG=Google+Search&as_qdr=d   NOW COMPARE

 

Note: - Just change the =d to d5 for 5 days, or w5 for five weeks, or y5 for 5 year, etc.

 

 

 

Dynamic Javascript Insertion using javascript

Fortunately, dynamic insertion of CSS or Javascript is relatively painless.

var headID = document.getElementsByTagName("head")[0];               
var newScript = document.createElement('script');                   
newScript.type = 'text/javascript';                                 
newScript.src = 'http://www.somedomain.com/somescript.js';          
headID.appendChild(newScript);                                      
               

It's really that simple. headID gets the <head> element of the page. Next we create a new 'script' element, assign it a text/javascript type, and then the url of the script (which can be anywhere on the net since it's basically a javascript include). Finally we append the new element to our head section where it is automatically loaded.

If you're loading an external javascript and you need to know when the script has loaded you can simply use .onload=yourfunction; to set up the onload handler. Here's an example.

var headID = document.getElementsByTagName("head")[0];                
var newScript = document.createElement('script');                   
newScript.type = 'text/javascript';                                 
newScript.onload=scriptLoaded;                                      
newScript.src = 'http://api.flickr.com/?tags=sunset&format=json';   
headID.appendChild(newScript);                                      

Now when this script has been loaded the .onload event will call a function named scriptLoaded().

 

Dynamic Cascading Style Sheets using Javascript

The usefulness of being able to dynamically load a style sheet is fairly limited, but there is one very good reason to keep this tool handy: it lets you load a specific stylesheet for a specific browser. Instead of having one massive style sheet for every browser which visits your page, you can break out the stylesheets into browser specific Firefox, IE, Safari, Opera, etc styles which accommodate the eccentricities of each browser and let you serve smaller css files to your visitors to boot.

The code for this is just as simple as the javascript.

var headID = document.getElementsByTagName("head")[0];       
var cssNode = document.createElement('link');               
cssNode.type = 'text/css';                                  
cssNode.rel = 'stylesheet';                                 
cssNode.href = 'FireFox.css';                               
cssNode.media = 'screen';                                   
headID.appendChild(cssNode);                                 
                              

We get the <head> tag, then create the link and apply the attributes. When it's all set up we insert the new cssNode into the head section of our webpage where the various styles are instantly applied.

A complete reference for adding, creating, altering and deleting stylesheets and their elements can be found in a newer article titled Totally Pwn CSS with Javascript. If you are looking to do more than dynamically add a stylesheet you should definitely check out this article.