Monday 8 December 2014

Fixing Laptop Keyboard Issue: Apostrophe Key Not Working













Hi,

A user raised the issue in IT stating that she is having issues in typing apostrophe key. One of my colleague went to check the issue. It was very new laptop which was issued to the user. When he checked the issue he found out that the key is not even working in notepad and when she typed the other keys then its gets displayed. He asked me to log the complaint in the manufacturer. But when I checked the same key using the utility manufacturer provides over its website to check the keyboard issue then it was working fine. I was little hesitate to log the complain seeing this and was working on other manufacturer laptops and thought of checking the same in those laptops and found same issue.

I checked the keyboard settings and other options but which solved my issue is to open language from control panel and I observed their were two keyboard selected one is US and other is US international. I removed the US International keyboard from their and typed again. It worked like charm.


Also You can check the below steps to resolve the issue.

Here are the steps to fix the laptop keyboard issue with the apostrophe key not working due to the US International keyboard setting:

Begin by accessing the Control Panel on your laptop. You can do this by clicking on the Start button and selecting Control Panel from the menu.

In the Control Panel, locate and click on the "Language" or "Region and Language" option. This will open the language settings for your computer.

In the language settings window, you will see a list of installed keyboards. Look for the keyboard layout labeled "US International" and select it.

Click on the "Remove" or "Delete" button to remove the US International keyboard layout from your system.

After removing the US International keyboard layout, ensure that the only remaining keyboard layout is "US" or "United States." If any other keyboard layouts are present, remove them as well.

Once you have removed the US International keyboard layout and any other unnecessary layouts, click on the "Apply" or "OK" button to save the changes.

Test the keyboard by opening a text editor such as Notepad and try typing the apostrophe key. It should now work properly.

By following these steps, you should be able to resolve the issue with the apostrophe key not functioning on the laptop due to the US International keyboard setting.

Regards, IIS

Tuesday 25 November 2014

Gmail filters can save your job

I am working with IT infrastructure support team. We have got several branches in which I have to provide support to the users. I encountered the escalation so many times when user sent any email and I was not able to reply on them because I was not aware He/She was sitting in the same location where I have been deployed. This is usual because my sitting in any branch is very sudden. Always I had this in mind If get to know which user is sitting around me and whenever he or she sends any email I get to know. Thus I found the solution using Gmail feature of filtering the user emails and give them label. Then I collected the all user email IDs and created one filter and give them label as my users. After that whenever I get any email from them I get to know as my users in Gmail and I reply to them with no delays.

To create the filter Lets have two email ids. gaurav@abc.om and manish@abc.com.

1. Go to Gmail search option put their email like this















2. Click on create filter with this search and select the label you create like the one I have create in create in my case as My Users and also check apply filters to matching conversations as given below.













3. Once you will click on create filter, Every email coming from the user will be seen as My Users. and then you can recognize that you have received email for follow up.

Please comment if you are facing challenge in configuring Gmail filters.


Regards, IIS

Sunday 23 November 2014

Install Windows Drivers Offline

Today, I would like to talk about task every IT support person encounter now and then and also for those who have recently installed the windows and worried of its drivers installation. It is very time consuming to install the driver one by one. However there is other way around using which one can install all drivers at once if he has setup files.

1. Download all driver at one place.

2. Extract each of them in their folder.

3. Go to the device manager by typing devmgmt.msc in Run.

4. Go to Scan hardware changes and click on it.




5.  Go to any driver and click on update driver.


6. Go to browse my computer for driver software.




7. Browse a place where you have saved your extracted drivers.




8. Going forward click on Scan for hardware changes and it will automatically pick all drivers from the path you had extracted your drivers in.


If you have centralized location where you keep all your drivers and it is a UNC Path. Same can be achieved by mapping the shared drive and providing as browse for folder path. Windows will install the same from network path.

Regards, IIS







Friday 21 November 2014

Mistakes Managers Make

Today, I thought of writing about something I experience every now and then. There have been instances in which we see things wrongly communicated and misconducted. It is because there are many mistakes a manager does while handling his/her job.I am citing some which justifies my point.

Assignment of Work

When a manager assign the work among his team members without any specification or type results less productivity because every team player think that the other member of the team also has the responsibility of working on that and thus would avoid taking things seriously.

Believe on one blindly

As it gets longer for an employee in the organisation a manager start believing on that employee blindly thinking he is here for long because he is doing everything right. However, on the contrary when a person work for long period in the organisation he takes his/her job less seriously as he is aware of it that everybody knows him very well and would think many a times before taking action against him.

Hardly interact with his team

A manager who interact with his team hardly is not aware of the quality of his team members and can not utilize them as per their skills.

Believe on Hearsay

A manager forget one thing that one hides his mistakes by just telling the mistakes of the others and there are many team members those who have enough time on bitching about others and less time to finish his assigned tasks. He does this so that he can divert his attention from him to other team member.

Issues in team

Biggest problem arises when a manager is involved in solving the issues of others and forget that these issues came across because of providing less support to the team itself. For example, He would expect you to solve the issues on the floor but will forget the issues you had shared with him and he never took them seriously.

Feedback

Feedback are very important as if they are important those can be implemented and if these are not he can still solve the confusion of the one who has given them.

Regards IIS





Tuesday 18 November 2014

Personal Info is being stolen by computer threats

In the recent days where everybody tries to access everything through Internet forget that the way we can not trust every person we meet similarly we can not trust every website, every application, every file we open. There can be numerous ways of taking advantage of the things we do online and offline.There are several things that can help you to stay safe online as well as offline.



Antivirus

There are many antivirus online that claims your computer security however only few do actually. A good antivirus keeps updating its database with latest threat and notify its users through emails or notifications as soon as it finds anything similar to what it has in its database it acts right then. Microsoft has recently started providing security essentials along with package or windows updates which may remove suspicious content however they are not focused on latest threat and their database is not fully updated that of other top antivirus companies.

Email Attachments

Mostly hackers gain access to your computer using infected attachment because of the connectivity limitation therefore we should be more sensitive to the attachment we receive they seem to be simple documents however has  suspicious files attached which is not seen at first go. We need to only open attachment coming from authenticated sources.

Online Banking

These days everybody buys some or other thing online due to lack of time or reasonable price However not every website keep your financial data safe so just don't just go by what is written on their website. Only websites running over https and having certificates from authentic sources should be used for transaction. Key loggers records the keys pressed and mouse movement and share with who has created them over the internet thus one should use virtual keyboard displayed at every bank site because it keeps changing its letters at every log in which does not let a hacker know that which number was entered.





Sunday 16 November 2014

Trend Micro Office Scan service keeps stopping

I come across an issue today where Windows 8 got stuck at restarting and had to shut it down forcefully. I observed that in the service span trend micro service was trying to stop itself however got stuck at stopping.



I did it manually but had no luck. I tried SC command to stop it however it will not get displayed as installed service because Trend micro has started malfunction.

Solutions - 
I had to re install the trend micro to get rid of the issue and post that everything seems to be working as expected.

Regards, Baij

Sunday 2 November 2014

Manage Engine Service Desk Issues

Every organization needs to know about their IT team performance and reports of the issues that mostly affects the users therefore they need a software that can create a database of the issues which can be fetched at the time of IT review.

Considering the requirement we have lately introduced Manage Engine Service Desk and came across several options which led us to so many limitation. Here are some of the challenges that we faced during its testing.





1. No auto merge options available in the tool.

2. Default search options are worst while looking for the same kind of tickets using subjects or content or users which leads to unnecessary tickets unassigned.

3. Operating Hours in the settings can only be set to Organization and not for technician. Hence business rules can not be applied on the basis of Working hours.

4. Missing a link through which user can open the ticket. But has a very poor way by only replying to the email. If user has to say thanks to the technician then also it gets open.

5. It does not have keyboard shortcut to merge tickets. One will have to scroll down/up till the end to click the merge button which is quite frustrating.

6. We found out that emails coming from external sources also raises the tickets which is actually needed no attention.

These are very serious concerns for an organization working 24x7. Therefore would be not recommending to anyone looking for solution using this tool.

Regards, Baij

Windows 8 Sucks

Windows 8 addresses the spinning issue by implementing a smart approach. The developers have ensured that the operating system will not restart until all background services have stopped and all running programs have closed successfully. In the event that a service fails to stop or a program fails to close, Windows 8 will get stuck at the spinning dots animation during both startup and shutdown processes.


Some of the issues are very frequent in windows 8 which needs serious attention.

1. Service gets hanged at starting or stopping.
2. stuck at restarting
3. Unable to install any application due to system files corrupt.

Solutions

Check if there is any service which is in stopping state and having difficulty in stopping.
Check if there is any programs which is stuck while restarting.
Check if Antivirus is malfunctioning or outdated.

Which worked out in my case is to Uninstall the Trend micros office Scan Antivirus will solve the issue.


Regards, IIS

Sunday 26 October 2014

Secure your browser from being hacked

These days user interest is everything and this is something Google got to know a while back and started monitoring user search queries and shows the ads to user wherever he visits accordingly. Some of the other also tried to get in such practices and launched their search engine however since they have started something with low cost and needed huge profit thus do the malpractice when you install them.



Today we are discussing about an add on and search engine Mystartsearch.com which gets installed along with other untrustworthy applications and steals our web history and route us to wrong websites at times and crashes our browsers. This tool also creates unnecessary slowness while surfing. I have removed this from so many users of my organization. In order to remove this malicious application from your computer. Follow the steps.


Solutions

There are many ways of removing it but which best worked out for me is to remove its folder from Program Files.

You wouldn't find one with the same name however unknown software will keep its setup inherent therefore delete the one you think is less important.

It will not let you delete the folder right away but will give you folder is in use error in that case stop its process from task manager.


Regards, Baij

Saturday 25 October 2014

Save computer inventory in text file - Save your precious time !!

In the early days of my joining in IT infrastructure team I encountered a handful of instances where I had to note down serial number, Model number, Operating system, Physical Memory, HDD manually and many other things which used to be so time consuming.

As a result I created one script so that I could have all that information in one text file and I could save it on my system and share with everybody. Here below is one of my script.

****Start

strComputer = "."
Set objWMIService = GetObject("winmgmts:" _

    & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
   Set colBIOS = objWMIService.ExecQuery _
    ("Select * from Win32_BIOS")
Set wshNetwork = WScript.CreateObject( "WScript.Network" )
ff=wshNetwork.ComputerName
Set colItems = objWMIService.ExecQuery("Select * from Win32_ComputerSystem")
For Each objItem in colItems
Model = objItem.Model
RAM = Int(objItem.TotalPhysicalMemory /(100000000))
timenow = Now
Next
Set oss = objWMIService.ExecQuery ("Select * from Win32_OperatingSystem")
For Each os in oss
OSystem = os.Caption
Next
For each objBIOS in colBIOS
    Manufacturer = objBIOS.Manufacturer
    Serial= objBIOS.SerialNumber
Next
Set colChassis = objWMIService.ExecQuery _

("Select * from Win32_SystemEnclosure",,16)
For Each objChassis in colChassis
  For Each objItem in objChassis.ChassisTypes
    Select Case objItem
    Case 1 strChassis = "Maybe Virtual Machine"
    Case 2 strChassis = "??"
    Case 3 strChassis = "Desktop"
    Case 4 strChassis = "Thin Desktop"
    Case 5 strChassis = "Pizza Box"
    Case 6 strChassis = "Mini Tower"
    Case 7 strChassis = "Full Tower"
    Case 8 strChassis = "Portable"
    Case 9 strChassis = "Laptop"
    Case 10 strChassis = "Notebook"
    Case 11 strChassis = "Hand Held"
    Case 12 strChassis = "Docking Station"
    Case 13 strChassis = "All in One"
    Case 14 strChassis = "Sub Notebook"
    Case 15 strChassis = "Space-Saving"
    Case 16 strChassis = "Lunch Box"
    Case 17 strChassis = "Main System Chassis"
    Case 18 strChassis = "Lunch Box"
    Case 19 strChassis = "SubChassis"
    Case 20 strChassis = "Bus Expansion Chassis"
    Case 21 strChassis = "Peripheral Chassis"
    Case 22 strChassis = "Storage Chassis"
    Case 23 strChassis = "Rack Mount Unit"
    Case 24 strChassis = "Sealed-Case PC"
    End Select
  Next
Next
Set NIC1 = GetObject("winmgmts:").InstancesOf("Win32_NetworkAdapterConfiguration")

For Each Nic in NIC1

if Nic.IPEnabled then

StrIP = Nic.IPAddress(i)
MAC = Nic.MACAddress
end If
Next

Set colItems = objWMIService.ExecQuery("Select * from Win32_Processor")
For Each objItem in colItems
    CPU = objItem.Name
Next
Set colSoft = objWMIService.ExecQuery("SELECT * FROM Win32_Product WHERE Name Like 'Microsoft Office%'")

    If colSoft.Count = 0 Then
MS = "NO OFFFICE INSTALLED"
    else
       For Each objItem In colSoft
          MS = objitem.caption
          exit for
       Next
    End If
Set colSoft = objWMIService.ExecQuery("SELECT * FROM Win32_Product WHERE Name Like 'Sony Sound%'")

    If colSoft.Count = 0 Then
Sony = "NOSonySoundForge"
    else
       For Each objItem In colSoft
          Sony = objitem.caption
          exit for
       Next
    End If
'Visio

Set colSoft = objWMIService.ExecQuery("SELECT * FROM Win32_Product WHERE Name Like 'Microsoft Office Visio%'")

    If colSoft.Count = 0 Then
Visio = "NOVisio"
    else
       For Each objItem In colSoft
          Visio = objitem.caption
          exit for
       Next
    End If
'OneNote

Set colSoft = objWMIService.ExecQuery("SELECT * FROM Win32_Product WHERE Name Like 'Microsoft Office OneNote%'")

    If colSoft.Count = 0 Then
OneNote = "NOOneNote"
    else
       For Each objItem In colSoft
          OneNote = objitem.caption
          exit for
       Next
    End If

'Project

Set colSoft = objWMIService.ExecQuery("SELECT * FROM Win32_Product WHERE Name Like 'Microsoft Office Project%'")

    If colSoft.Count = 0 Then
Project = "NOProject"
    else
       For Each objItem In colSoft
          Project = objitem.caption
          exit for
       Next
    End If
'Visual Studio

Set colSoft = objWMIService.ExecQuery("SELECT * FROM Win32_Product WHERE Name Like 'Microsoft Visual Studio%'")

    If colSoft.Count = 0 Then
VS = "NOVS"
    else
       For Each objItem In colSoft
          VS = objitem.caption
          exit for
       Next
    End If
'FrontPage

Set colSoft = objWMIService.ExecQuery("SELECT * FROM Win32_Product WHERE Name Like 'Microsoft Office FrontPage%'")

    If colSoft.Count = 0 Then
FrontPage = "NOFrontPage"
    else
       For Each objItem In colSoft
          FrontPage = objitem.caption
          exit for
       Next
    End If

'Photoshop

Set colSoft = objWMIService.ExecQuery("SELECT * FROM Win32_Product WHERE Name Like 'Adobe Photoshop%'")

    If colSoft.Count = 0 Then
Photoshop = "NOPhotoshop"
    else
       For Each objItem In colSoft
          Photoshop = objitem.caption
          exit for
       Next
    End If

'CC

Set colSoft = objWMIService.ExecQuery("SELECT * FROM Win32_Product WHERE Name Like 'Adobe Creative Cloud%'")

    If colSoft.Count = 0 Then
CC = "NOCC"
    else
       For Each objItem In colSoft
          CC = objitem.caption
          exit for
       Next
    End If

'Illustrator

Set colSoft = objWMIService.ExecQuery("SELECT * FROM Win32_Product WHERE Name Like '%Illustrator%'")

    If colSoft.Count = 0 Then
Illustrator = "NOIllustrator"
    else
       For Each objItem In colSoft
          Illustrator = objitem.caption
          exit for
       Next
    End If

'Flash

Set colSoft = objWMIService.ExecQuery("SELECT * FROM Win32_Product WHERE Name Like '%DreamWeaver%'")

    If colSoft.Count = 0 Then
Flash = "NOFlash"
    else
       For Each objItem In colSoft
          Flash = objitem.caption
          exit for
       Next
    End If

'Aftereffects

Set colSoft = objWMIService.ExecQuery("SELECT * FROM Win32_Product WHERE Name Like '%Aftereffects%'")

    If colSoft.Count = 0 Then
Aftereffects = "NOAftereffects"
    else
       For Each objItem In colSoft
          Aftereffects = objitem.caption
          exit for
       Next
    End If
Set colItems = objWMIService.ExecQuery(_
"Select * from Win32_DiskDrive")
For Each objItem in colItems
HDD = Int(objItem.Size /(1000000000))
Next
Set fso = CreateObject("Scripting.FileSystemObject")
If Not fso.FolderExists("C:\Inv") Then
Set newfolder = fso.CreateFolder("C:\Inv")
End If
Set oFile = fso.OpenTextFile("C:\inv\" & ff &".txt",2,True)

oFile.Writeline wshNetwork.UserName &Space(1)& strChassis &Space(1)& Replace(Manufacturer," ","") &Space(1)& _
Replace(Model," ","") &Space(1)& Serial &Space(1)& wshNetwork.ComputerName _
&Space(1)&"N/A "&Replace(CPU," ","") &Space(1)& RAM &Space(1)& HDD &Space(1)& StrIP &Space(1)&MAC &Space(1)& _
Replace(OSystem," ","") &Space(1)& Replace(MS," ","") &Space(1)& Replace(Sony," ","")&Space(1)& Replace(Visio," ","") _
&Space(1)& Replace(OneNote," ","")&Space(1)& Replace(Project," ","")&Space(1)& Replace(VS," ","")&Space(1)& Replace(FrontPage," ","") _
&Space(1)& Replace(Photoshop," ","")&Space(1)& Replace(CC," ","")&Space(1)& Replace(Illustrator," ","") _
&Space(1)& Replace(Flash," ","")&Space(1)& Replace(DreamWeaver," ","") _
&Space(1)& Replace(Aftereffects," ","")&Space(1)& Replace((Now)," ","")
oFile.Close

sDestServer = "PCNOD513062"
Const OverwriteExisting = True

Sharepath = "\\" &sDestServer& "\Files\"
CopyFromPath = "C:\inv\" & ff &".txt"
FSO.CopyFile CopyFromPath,Sharepath,OverwriteExisting


***End
Regards, Baij

Computer Inventory - straight on email WOW !!

It was not enough to create the inventory till it fetched the details on email IDs thus created one which could send the details to any requester email ID. This script is necessary in case shared path at which we wanted to save the inventory is not accessible or we have to send it straight to someone on his email only.


Start from right below -

strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
    & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
   Set colBIOS = objWMIService.ExecQuery _
    ("Select * from Win32_BIOS")
Set wshNetwork = WScript.CreateObject( "WScript.Network" )
ff=wshNetwork.ComputerName
Set colItems = objWMIService.ExecQuery("Select * from Win32_ComputerSystem")
For Each objItem in colItems

Model = objItem.Model
RAM = Int(objItem.TotalPhysicalMemory /(100000000))
timenow = Now
Next
Set oss = objWMIService.ExecQuery ("Select * from Win32_OperatingSystem")
For Each os in oss
OSystem = os.Caption
Next
For each objBIOS in colBIOS
    Manufacturer = objBIOS.Manufacturer
    Serial= objBIOS.SerialNumber
Next
Set colChassis = objWMIService.ExecQuery _
("Select * from Win32_SystemEnclosure",,16)
For Each objChassis in colChassis
  For Each objItem in objChassis.ChassisTypes
    Select Case objItem
    Case 1 strChassis = "Maybe Virtual Machine"
    Case 2 strChassis = "??"
    Case 3 strChassis = "Desktop"
    Case 4 strChassis = "Thin Desktop"
    Case 5 strChassis = "Pizza Box"
    Case 6 strChassis = "Mini Tower"
    Case 7 strChassis = "Full Tower"
    Case 8 strChassis = "Portable"
    Case 9 strChassis = "Laptop"
    Case 10 strChassis = "Notebook"
    Case 11 strChassis = "Hand Held"
    Case 12 strChassis = "Docking Station"
    Case 13 strChassis = "All in One"
    Case 14 strChassis = "Sub Notebook"
    Case 15 strChassis = "Space-Saving"
    Case 16 strChassis = "Lunch Box"
    Case 17 strChassis = "Main System Chassis"
    Case 18 strChassis = "Lunch Box"
    Case 19 strChassis = "SubChassis"
    Case 20 strChassis = "Bus Expansion Chassis"
    Case 21 strChassis = "Peripheral Chassis"
    Case 22 strChassis = "Storage Chassis"
    Case 23 strChassis = "Rack Mount Unit"
    Case 24 strChassis = "Sealed-Case PC"
    End Select
  Next
Next
Set NIC1 = GetObject("winmgmts:").InstancesOf("Win32_NetworkAdapterConfiguration")

For Each Nic in NIC1

if Nic.IPEnabled then

StrIP = Nic.IPAddress(i)
MAC = Nic.MACAddress
end If
Next

Set colItems = objWMIService.ExecQuery("Select * from Win32_Processor")
For Each objItem in colItems
    CPU = objItem.Name
Next
on error resume next

Const schema   = "http://schemas.microsoft.com/cdo/configuration/"
Const cdoBasic = 1
Const cdoSendUsingPort = 2
Dim oMsg, oConf, strReport

strReport = strReport & "<body>"
strReport = strReport & "<div align='center'>"
strReport = strReport &  "<br>"
strReport = strReport & "<table border='1' style='border-collapse: collapse'>"
   strReport = strReport & "<tr bgcolor='#fff' bordercolor='#222' size='2'>"
      strReport = strReport & "<td colspan='2' align='center'><Font size = '2'>" & wshNetwork.UserName & "</Font size></td>"
 strReport = strReport & "<td colspan='2' align='center'><Font size = '2'>" & strChassis & "</Font size></td>"
      strReport = strReport & "<td colspan='2' align='center'><Font size = '2'>" & Manufacturer & "</Font size></td>"
 strReport = strReport & "<td colspan='2' align='center'><Font size = '2'>" & Model & "</Font size></td>"
 strReport = strReport & "<td width='80' colspan='2' align='center'><Font size = '2'>" & Serial & "</Font size></td>"
 strReport = strReport & "<td width='80' colspan='2' align='center'><Font size = '2'>" & wshNetwork.ComputerName & "</Font size></td>"
 strReport = strReport & "<td width='80' colspan='2' align='center'><Font size = '2'>" & CPU & "</Font size></td>"
 strReport = strReport & "<td width='80' colspan='2' align='center'><Font size = '2'>" & RAM & "</Font size></td>"
 strReport = strReport & "<td width='80' colspan='2' align='center'><Font size = '2'>" & HDD & "</Font size></td>"
 strReport = strReport & "<td width='80' colspan='2' align='center'><Font size = '2'>" & StrIP & "</Font size></td>"
 strReport = strReport & "<td width='80' colspan='2' align='center'><Font size = '2'>" & MAC & "</Font size></td>"
 strReport = strReport & "<td width='80' colspan='2' align='center'><Font size = '2'>" & OSystem & "</Font size></td>"
 strReport = strReport & "<td width='20' align= 'right'>" & FormatDateTime(Date(),1) & "</td>"
   strReport = strReport & "</tr>"
strReport = strReport & "</table>"

' E-mail properties
Set oMsg      = CreateObject("CDO.Message")
oMsg.From     = "baij.rathore@one97.net"  ' or "Sender Name <baij.rathore@one97.net>"
oMsg.To       = "baij.rathore@one97.net"    ' or "Recipient Name <baij.rathore@one97.net>"
oMsg.Subject  = "Test from VBScript"
oMSG.HTMLBody = strReport



' GMail SMTP server configuration and authentication info
Set oConf = oMsg.Configuration
oConf.Fields(schema & "smtpserver")       = "smtp.gmail.com" 'server address
oConf.Fields(schema & "smtpserverport")   = 465              'port number
oConf.Fields(schema & "sendusing")        = cdoSendUsingPort
oConf.Fields(schema & "smtpauthenticate") = cdoBasic         'authentication type
oConf.Fields(schema & "smtpusessl")       = True             'use SSL encryption
oConf.Fields(schema & "sendusername")     = "brathoreit@gmail.com" 'sender username
oConf.Fields(schema & "sendpassword")     = "*********"      'sender password
oConf.Fields.Update()

' send message
oMsg.Send()

' Return status message
If Err Then
    resultMessage = "ERROR " & Err.Number & ": " & Err.Description
    Err.Clear()
Else
    resultMessage = "Message sent ok"
End If
Set wshNetwork.UserName = Nothing
Set strChassis = Nothing
Set Manufacturer = Nothing
Set Model = Nothing
Set Serial = Nothing
Set wshNetwork.ComputerName = Nothing
Set CPU = Nothing

Wscript.echo(resultMessage)


Ending till above line.

Regards, Baij

Thursday 6 March 2014

PowerShell Script - Stop similar services

This script can be very important when you want to schedule some of the similar service to stop at certain time for the maintenance purposes. I had one incident in which Altiris asset explorer used to malfunction after a while and solution to the issue is stop its service and restart thus I created the script to get rid of the situation. Here below is the example which I used to stop all SQL services at once.

Change the Bold Part as per your need.

$services = Get-Service
Foreach ($service in $services) {
If($service.name –like ‘SQL*’) {
$service.stop()
}
}

Regards,
Baij

PowerShell Scripts - Running on remote host

If you have any powershell script which is working on your local system and the same want to run over remote hosts and get details. Use below as a solution to your request. The very first line determines how variable for getting hostname is determined. I have created one for getting Operating system details.



$computername = (Read-host 'Enter a computer name')
)

get-wmiobject -class win32_operatingsystem -computer $computername | select-object BuildNumber, Caption, ServicePackMajorVersion

Regards, Baij

PowerShell Scripts

 Server inventory


Change the file and software name given in Bold according to your need.

$com = Get-Content C:\FileNAme.txt
foreach($computers in $com){
$cpu = Get-WmiObject -Class Win32_Processor -Computername $computers
$mb =  Get-WmiObject -Class Win32_BaseBoard -Computername $computers
$sn =  Get-WmiObject -Class win32_bios -Computername $computers
$cn =  Get-WmiObject -Class Win32_ComputerSystem -Computername $computers
$os =  Get-WmiObject -Class Win32_OperatingSystem -Computername $computers
$Office = Get-WmiObject -Class Win32_Product -Computername $computers | where {$_.Name -eq "Microsoft Office Standard 2007"}

$props = @{           
    Computername  = $cn.__Server
    SerialNo      = $sn.Serialnumber
    Model         = $cn.Model
    TotalPhysicalMemory = $cn.TotalPhysicalMemory / 1024 / 1024
    Os = $os.Caption
    IE = $IE.Version
    Office = $office.Name
   
    
    }

New-Object PSObject -Property $props | Ft -Autosize}

Regards,
Baij

PowerShell Scripts - Functions Definition

Have Created one function which will fetch Operating Information for multiple computers.

Change the text file name accordingly.

Function Get-Osinfo {
BEGIN{}
Process{
                $computername = $_
                Get-wmiobject –class win32_operatingsystem –computer $computername | select-object BuildNumber, Caption, ServicePackMajorVersion
}
END{}
}

Get-content C:\computers.txt | get-osinfo

Regards
Baij

PowerShell Script - Model, Name, Serial Number

One who is starting to learn powershell this ones for you fella. This is a very basic script to fetch Computer Model, its name and manufacturer serial number which is unique and helps to identify the machine from a lot.This one works from sitting on your own machine and is able to pull the information from multiple computers one by one. What we you have to do is to add every computer name in a text file then it will connect to all those machine one by one and will keep fetching the details for you in an well defined manner.

Change the filename given in bold letters and put computernames in it. Run the below script from powershell only.


$com = Get-Content C:\FileNAme.txt
foreach($computers in $com){
$sn =  Get-WmiObject -Class win32_bios -Computername $computers -EA silentlyContinue
$cn =  Get-WmiObject -Class Win32_ComputerSystem -Computername $computers -EA silentlyContinue
Write-Host $sn.SerialNumber, $cn.Name, $cn.Model

}

Regards, IIS

PowerShell Scripts - File exist or not

In an organisation where software inventory application does not exist Scripts plays a good role. I met one situation where we had to analyse that in how many computers of our organisation has Winzip installed so that licenses can be procured before they raid us and charge the fine upon.Thus inspired me to create a script which would explore the files remotely exist or not.

I have again used the powershell to make this happen. Script would go through the text file which has computer names in it and will execute the same command one by one on all of them.


$colComputers = Get-Content C:\FileName.txt
$ErrorActionPreference = "SilentlyContinue"
foreach ($StrComputer in $colComputers)
{
$GenItems1 = gwmi Win32_ComputerSystem -Comp $StrComputer
$x86Path = 'C:\Program Files (x86)\WinZip\WZCAB.DLL'
if(!$GenItems1){
Write-Host “$StrComputer not found”
}
else
{
Write-Host $StrComputer, (Get-Item $x86Path | Select -ExpandProperty VersionInfo).fileVersion
}
}



Regards,
Baij

PowerShell Scripts - Ping a Series of IP Address

There are many application over the internet which can ping multiple machines and provide you the status however no software is trustworthy unless you know its coding thus should not be used as far as server or important machines are concerned thus created one of which coding is visible and is very easy to implement.

We need to simply change IP address series 10.10.10.$ to what is our requirement and it is just ready for your environment. Track your important servers connectivity using this simple script.

Start

$ping = New-Object System.Net.NetworkInformation.Ping
$i = 0
1..255 | foreach { $ip = “10.10.10.$_”
$Res = $ping.send($ip)
if ($Res.Status -eq “Success”)
{
$result = $ip + ” = Success”
Write-Host $result
$i++
}}

$Hosts = [string]$i + ” Hosts is pingable”


Write-Host $Hosts

Finish

Regards, IIS

PowerShell Scripts - Machine details from AD

It is also possible to fetch the Operating system and Machine name from Active Directory for which simple one line is enough. This script can fetch more in less time as it simply has to connect to active directory database. Other ways to pull the same information is to run a script remotely to each and every computer one by one remotely and then have data. More information can also be added like version, fsdn by just extending the script.

Below script will give away the output in a well defined table and can be used to create dashboard.

Get-ADComputer -Filter * -Property * | Format-Table Name,OperatingSystem -Wrap –Auto 


Same Information can be achieved by using Power shell also.


DSQUERY Computer "OU=OUNAME,DC=india,DC=DOMAINNAME,DC=local" -name COMPName* -scope subtree -limit 0 > C:\ComputerOU.csv


Regards, IIS

Symantec Altiris - Inventory from SQL Database


Altiris is an inventory software from Symantec which provides in depth details of the computers, server, devices in the organization. It has so many templates in built however its feature to fetch the inventory using the console does not convince much and has very complex architecture. Thus it is rather easy to pull inventory from altiris sql database than its console. I succeeded to create several here using sql queries and sharing eventually.

Below sql query will help you to pull the name for Computer, Software, Operating System, Processor in a tabular manner. Please go through the script and change as need be.

Start

Select * from
( SELECT DISTINCT
[Symantec_CMDB].[dbo].[vComputer].Name
,[Symantec_CMDB].[dbo].[Inv_AddRemoveProgram].DisplayName as name1
,[Symantec_CMDB].[dbo].Inv_HW_Computer_System.[Identifying Number]
,[Symantec_CMDB].[dbo].vComputer.[OS Name]
,[Symantec_CMDB].[dbo].[Inv_HW_Processor_Name_Windows].[Processor Name]

FROM [Symantec_CMDB].[dbo].Inv_AddRemoveProgram INNER JOIN [Symantec_CMDB].[dbo].vComputer
ON [Symantec_CMDB].[dbo].Inv_AddRemoveProgram._ResourceGuid = [Symantec_CMDB].[dbo].vComputer.Guid INNER JOIN
[Symantec_CMDB].[dbo].Inv_HW_Computer_System
ON [Symantec_CMDB].[dbo].vComputer.Guid = [Symantec_CMDB].[dbo].Inv_HW_Computer_System._ResourceGuid
INNER JOIN [Symantec_CMDB].[dbo].[Inv_HW_Processor_Name_Windows]
ON [Symantec_CMDB].[dbo].vComputer.Guid = [Symantec_CMDB].[dbo].[Inv_HW_Processor_Name_Windows]._ResourceGuid
)P
PIVOT (
Count(name1)
FOR name1 in ([Microsoft Office Standard 2007]
,[Java(TM) 6 Update 45]
,[WinZip 17.0]
,[Adobe Reader X (10.1.6)]
,[Symantec pcAnywhere]
)
)As PVT
Order by Name

Finish

Regards, IIS

Monday 3 March 2014

Find Software Installed on Remote Computer

There are many features in the windows itself which can help you to know if a software related to one particular company is installed on remote computer or not. WMIC command is one of them which can help you. It is the inbuilt command of windows and has so many subfeature. Let me let you one them I used to know how many software has been installed on remote computer which is of Microsoft only.

Run the command in command prompt straight.

WMIC /Node:HostName path win32_Product Where (Caption like "%Microsoft%") Get Name, Version


If you want to know about the software from other publisher change Microsoft to others like Adobe, Java or whatever your need be. Also do not forget to change the hostname.

Regards, Baij


Tuesday 25 February 2014

Full computer details in a excel



This script is very important for someone in IT infra and provide all information in one excel file which he ever dreamed of. This collects hostname, manufacturer, bios version, release date, serial number, user domain and logged in user name.


strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
    & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
   Set colBIOS = objWMIService.ExecQuery _
    ("Select * from Win32_BIOS")

Set wshNetwork = WScript.CreateObject( "WScript.Network" )
Set Excel = WScript.CreateObject("Excel.Application")
Set ExWb = Excel.Workbooks.Open("C:\test.xls",,False)
Set ExWs = ExWb.Worksheets(1)
r = 1
Do Until len(Excel.Cells(r, 1).value) = 0
r = r + 1
Loop
Set colItems = objWMIService.ExecQuery("Select * from Win32_ComputerSystem")
For Each objItem in colItems
Excel.cells(r, 6).value = objItem.Model
Excel.cells(r, 13).value = Now
Next
Set colItems = objWMIService.ExecQuery("Select * from Win32_PhysicalMemory",,48)
For Each objItem in colItems

    Excel.cells(r, 12).value = objItem.Capacity
Next
For each objBIOS in colBIOS
    Excel.cells(r, 5).value = objBIOS.InstallableLanguages
    Excel.cells(r, 4).value = objBIOS.Manufacturer
    Excel.cells(r, 7).value = objBIOS.Name
    Excel.cells(r, 8).value = objBIOS.PrimaryBIOS
    Excel.cells(r, 9).value = objBIOS.ReleaseDate
    Excel.cells(r, 3).value = objBIOS.SerialNumber
    Excel.cells(r, 11).value = objBIOS.SMBIOSBIOSVersion
    For i = 0 to Ubound(objBIOS.BiosCharacteristics)
    Excel.cells(r, 17).value = objBIOS.BiosCharacteristics(i)
    Next
Next
Excel.cells(r, 1).value = wshNetwork.UserDomain
Excel.cells(r, 2).value = wshNetwork.UserName
ExWb.Save
Excel.Application.Quit


Regards,
Baij

Real Physical Memory Size in Machine

I have created one script to figure out the machine physical memory. This will provide its size in MB as well as in GB. It is dificult to know the exact size while applying simple coding Thus I created one with more coding and can be used the exact size.

Start

On Error Resume Next
Const GB = 1073741824
Const MB = 1048576
Dim Obj, Wmi

Set Wmi = GetObject("winmgmts:\\.\root\CIMV2")
For Each Obj In Wmi.ExecQuery("SELECT * FROM Win32_ComputerSystem")
 If Obj.TotalPhysicalMemory > Int(GB) Then
  msgbox _
  "Total Physical Memory : " & FormatNumber(Obj.TotalPhysicalMemory / GB,2) & " GB"
 Else
  msgbox _
  "Total Physical Memory : " & FormatNumber(Obj.TotalPhysicalMemory / MB,2) & " MB"
 End If
Next

Finish

Regards, IIS

Configure Dual Monitor





Today, We'll configure Dual Monitor on windows XP. Please follow the steps given below.

Right click on desktop and select properties.

How to allow websites in Barracuda.

How to allow websites in Barracuda.

Open the admin URL of barracuda and enter the admin credentials.

How to activate SIP accounts after creation

How to activate SIP accounts after creation.

1.       Login to dialer through putty.

How to Access ESXi Server Remotely

How to Access ESXi Server Remotely.

1.       Download  “vSphere Client” directly from Internet.
2.       Save setup.


Unable to see Images in Internet explorer

There have been many incidence where we get this issue where internet explorer is unable to show any images on a webpage. This happens as Internet explorer is set at more security in the beginning when it is at default setting. We can follow below steps to solve the issues.

We need to open the command prompt with administrator privileges and type below command.

secedit /configure /cfg %windir%\repair\secsetup.inf /db secsetup.sdb /verbose.

Post running the command restart IE and you would be able to restore all images.

If above said command does not work for you. There is probably some issues with the DNS Server. We can cross check by chaging the DNS server to 8.8.8.8 and check.

Regards, IIS

Symantec Altiris - Software reports

Since there are so many limitation in the altiris as far as pulling customized reports out of it. I had co-ordinated with them once and got to know that they will neither help you in this case and will refer some of its vendor for this service and there they would charge you very handsome amount.

After a long discussion with them I could completely release that this is something upto me and started exploring more myself. I got to know there is also a way to fetch the reports from its database which is quite simple if you get know basic things about SQL queries. Thus I created one query that helped out in pulling one which was in request those days. This query will pull Operating System, Computer Name and Specific Software Installed in the machines.

Start

select B.Name as TargetComputerName,

                  B.[OS Name],

                  a.DisplayName,a.InstallDate

       from  dbo.Inv_AddRemoveProgram  A Inner Join Evt_Push_Agent_Install_Service B

       ON A._ResourceGuid = B.TargetComputerGuid
     
       where A.DisplayName='Microsoft Office Standard 2007'

Finish

Regards, IIS


Install Multiple Software with a Click