pmatz: the IT thing
sporadically updated...
Wednesday, November 21, 2012
ldifde - an improvement on lpd.exe
Also strange that my last blog is a precursor to this. LDP.exe is a great gui interface for quick ldap queries, but i wanted to automate, script and get output to a file.
Enter ldifde.
with a few switches it allows for simple ldap queries to be scripted and give txt files with results.
You can also determine which attributes you want returned from the AD objects.
Currently using for a monthly review of AD groups.
Wednesday, December 14, 2011
LDP.exe
Typically I need to list members in AD groups and in AD Users & Computers you cannot export the lists.
LDP.exe, once bound to the domain can perform these simple queries and then you can grab the text output :)
I had to change the buffer and page size in the options to be able to get full results for queries that return a lot of text.
Tuesday, October 18, 2011
Folder Polling Script
A neat little script which checks a specified folder (here its C:\Presentations) for the addition of a new file every 5 seconds (WITHIN 5 WHERE) .
Then the script checks for a certain file type, here Powerpoint or web page/link, and then triggers the app accordingly to run this file.
When a new file is detected, the app currently running is closed and a new one started.
I have a server connected to a plasma display, and this script allows users to drag a file into a shared folder, and the server will display the latest file dragged in to the plasma.
(It uses the relevant switches for powerpoint presentation mode - POWERPNT.EXE /S, and Internet Explorer kiosk mode - iexplore.exe -k.)
Set objShell = CreateObject("Wscript.Shell")
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & _
strComputer & "\root\cimv2")
'set poll time and location in the next line
Set colMonitoredEvents = objWMIService.ExecNotificationQuery _
("SELECT * FROM __InstanceCreationEvent WITHIN 5 WHERE " _
& "Targetinstance ISA 'CIM_DirectoryContainsFile' and " _
& "TargetInstance.GroupComponent= " _
& "'Win32_Directory.Name=""c:\\\\Presentations""'")
Do
Set objLatestEvent = colMonitoredEvents.NextEvent 'waits until next event - next file put into folder.
strNewFile = objLatestEvent.TargetInstance.PartComponent
arrNewFile = Split(strNewFile, "=")
strFileName = arrNewFile(1)
strFileName = Replace(strFileName, "\\", "\")
strFileName = Replace(strFileName, Chr(34), "")
strFileName = Chr(34) & strFileName & Chr(34)
'check for file type and if ppt or htm then close program to allow for new application instance with file
chkPPT
'filter for ppt or iexplore
If Right(strfilename,6) = ".pptx" & Chr(34) Or Right(strfilename,5) = ".ppt" & Chr(34) Then
objShell.Run("POWERPNT.EXE /S " & strFileName)
ElseIf Right(strfilename,6) = ".html" & Chr(34) or Right(strfilename,5) = ".htm" & Chr(34) or Right(strfilename,5) = ".url" & Chr(34) Then
objShell.Run("iexplore.exe -k " & strFileName)
End If
Loop 'keep going
Sub chkPPT
set service = GetObject ("winmgmts:")
bFlag = False
For each Process in Service.InstancesOf ("Win32_Process")
If Process.Name = "POWERPNT.EXE" Or process.name = "iexplore.exe" Then
bFlag = True
End If
Next
'check for file type of newly added file - do nothing if not ppt or ie8
If Not (Right(strFileName,6) = ".pptx" & Chr(34) Or Right(strFileName,5) = ".ppt" _
& Chr(34) Or Right(strFileName,6) = ".html" & Chr(34) OR Right(strFileName,5) = ".htm" & Chr(34) OR Right(strFileName,5) = ".url" & Chr(34)) Then
bFlag = False
End If
'quit applications
If bFlag Then
strWmiq = "select * from Win32_Process where name='POWERPNT.exe'"
Set objQResult = Service.Execquery(strWmiq)
For Each objProcess In objQResult
intRet = objProcess.Terminate(1)
Next
strWmiq = "select * from Win32_Process where name='iexplore.exe'"
Set objQResult = Service.Execquery(strWmiq)
For Each objProcess In objQResult
intRet = objProcess.Terminate(1)
Next
End If
End Sub
Friday, September 30, 2011
When dates are not Excel friendly
I recently had an issue.
I have a report which exports into Excel. The date format from the report is US, and I work in the UK.
Excel tries to recognise the dates as UK, so for dates that fit (eg. month is 1-12) Excel gives me an incorrect date. For dates that don't fit (eg. month is 13-31) then Excel doesnt recognise this as a date and this is formatted as plain text.
An example of this is below:
7/29/2011 7:23:26 AMThese two dates should be 29/07/2011 and 02/08/2011 respectively. However the top one is formatted as text, whereas the bottom one is formatted as date (incorrect format in terms of UK to US!)
08/02/2011 05:45
To rectify this issue I have the formula shown below (which assumes the cell A1 contains the top of the list of exported dates)
=IF(ISNUMBER(A1),DATE(YEAR(A1), DAY(A1), MONTH(A1)),DATE(MID(A1, FIND("/", A1, 4)+1, 4), LEFT(A1, FIND("/", A1)-1), VALUE(MID(A1, FIND("/", A1)+1, 2))))This works exceptionally well.
A user came to me today with the same issue and following giving her this solution, I thought to blog this as being worth sharing.
Saturday, September 24, 2011
XBMC rip audio CD to mp3
- using wireless remote
- all media on mounted USB share (Samba installed so I can access across home network eg configured as a NAS also)
- using the Quartz skin currently
- All music, video, movies, photos cataloged
Thursday, September 1, 2011
Make an iPhone ringtone in iTunes 10
If you’ve made an iPhone ringtone before the process will be familiar to you. This will work the same on both Mac and Windows versions of iTunes 10:
Making the ringtone
• Launch iTunes 10
• Find and select the song you want to make a ringtone out of in iTunes 10
• Then click on the Options tab
• Change the .m4a to .m4r
• Click Yes when you get the next box.
• Drag the file from your desktop back into iTunes
• The file will now be added back into iTunes as a ringtone
• Drag it into your iPhone Ringtones to sync it.
If you cant see the .m4a on the end of the file:
• Open My Computer
• Choose Tools | Folder Options
• Click the View tab
• Untick Hide extensions for known file types
• Click OK
• Now the .m4a should be visible.
Wednesday, June 22, 2011
No MODI in Office 2010! (get it from 2007)
I first tried using the Microsoft Office Customisation tool, by running the command setup.exe /admin (see http://technet.microsoft.com/en-us/library/cc178956.aspx#BKMK_admincmd)
This has an excellent and straightforward GUI, and creates an .msp file which can then be pointed to using the command setup.exe /adminfile test.msp.
However, as my MS Office 2010 is installed and I will be using the license for 2010 to cover the 2007 MODI component (Microsoft's Office licenses are backwards compatible and can be used for the equivalent Office product in an earlier version provided that you are fulfilling the rest of the agreement in regards to number of installations) I did not have a product key for the 2007 install, and the use of the .msp then baulked as this needs to be supplied for the .msp file to go through, even though when I just ran the setup.exe manually it does NOT prompt for a key! (This is due to it seeing the install as an upgrade....
Anyway - I needed another solution, which I found with the setup.exe /config command. (http://technet.microsoft.com/en-us/library/cc178956.aspx#BKMK_config)
This involves copying the default config.xml and modifying it accordingly to your requirements. Below is the .xml I used to specify the MODI component only:
<configuration product="Enterprise">
<display accepteula="yes" completionnotice="yes" level="basic" suppressmodal="no">
<optionstate children="force" id="ACCESSFiles" state="absent">
<optionstate children="force" id="EXCELFiles" state="absent">
<optionstate children="force" id="GrooveFiles" state="absent">
<optionstate children="force" id="OneNoteFiles" state="absent">
<optionstate children="force" id="OUTLOOKFiles" state="absent">
<optionstate children="force" id="PPTFiles" state="absent">
<optionstate children="force" id="PubPrimary" state="absent">
<optionstate children="force" id="RMSFiles" state="absent">
<optionstate children="force" id="VisualStudio_PreviewServer_SPD" state="absent">
<optionstate children="force" id="WORDFiles" state="absent">
<optionstate children="force" id="XDOCSFiles" state="absent">
<optionstate children="force" id="SHAREDFiles" state="absent">
<optionstate children="force" id="TOOLSFiles" state="absent">
<optionstate children="force" id="MSOfficeDocumentImaging" state="Local">
</optionstate></optionstate></optionstate></optionstate></optionstate></optionstate></optionstate></optionstate></optionstate></optionstate></optionstate></optionstate></optionstate></optionstate></display></configuration>
Then I created a batchfile to run the setup.exe /config modi.xml command and hey presto - it works!
For a full list of options that can be configured in the xml I found http://technet.microsoft.com/en-us/library/cc179195.aspx most useful.
Thursday, April 21, 2011
Group Policy <> Registry
Glad I found this link :o)
Saturday, November 20, 2010
Synching
Again I am looking at syncing tools. Windows live beta has now gone and been replaced by Windows Live Sync.
It comes as part of the 2011 Essentials pack, only installable on Windows 7 though, so that makes for a bummer on my main home Win XP laptop. Will still use the web folder for live mesh there. 25 gig of free space is not something to be sniffed at.
This is being written on the blogger tool as part of the live essentials, which at first glance looks pretty cool Im currently on my little d430 ‘work’ laptop, with Windows 7 on it.
Also trying out a few tools to help sync my Google documents, Synchplicity and the office plugin. not installled yet.
WIll update this in a bit, but want to see if the blogger tool works…
Monday, September 27, 2010
Sky+ remote codes
Luckily my dad had a spare new Sky+ HD remote, which I thought would work.
If you need to get a different type of remote to work with Sky, Sky+ or Sky HD. Here's how:
1 press the TV button
2 press and hold the Select and i buttons until the red light on the remote flashes twice
3 press the 1 button (0=Standard, 1=Sky+, 2=Sky HD)
4 press the Select button (the red light should flash twice, if it doesn't, your remote cannot control a Sky+ Digibox)
5 press the Sky button
There are also other 'reset' codes and TV codes, which are easily available on the web. But this was the one we needed to get our remote working with our Sky+.
Now for some soldering of the old remote...