SQL Server 2005
(1)
TargetInstance.GroupComponent
(1)
TargetInstance.Drive
(1)
InstanceCreationEvent
(1)
DirectoryContainsFile
(1)
GroupComponent
(1)
PartComponent
(1)
CodeProject
(1)

Checking for File Extension

Asked By ewm
11-Nov-09 07:24 PM
I am writing a SSIS package (SQL2005) and need to watch a folder for the
appearance of a text file. I am using the WMI Event Watcher task. This WQL
code will correctly monitor for any file coming into the folder:

SELECT * FROM __InstanceCreationEvent WITHIN 10 WHERE TargetInstance ISA

I thought that I could add teh TargetInstance.Extension to the WQL query
like this:

SELECT * FROM __InstanceCreationEvent WITHIN 10 WHERE TargetInstance ISA

however, that did not work. I have tried putting the txt in single quotes
inside the double quotes and using single quotes alone but nothing seems to
work.

What's the secret. Thanks in advance.

"ewm" wrote:If you look at the Cim_DirectoryContainsFile class you will see

urkec replied to ewm
13-Nov-09 11:30 AM
If you look at the Cim_DirectoryContainsFile class you will see that it only
has two properties:

GroupComponent, representing the path to a Win32_Directory instance
PartComponent, representing the path to a CIM_DataFile instance

This is why your query does not work - there is no Extension property for
Cim_DirectoryContainsFile. This does not work either:

TargetInstance.PartComponent.Extension

because PartComponent (just as GroupComponent) contains just a path (as a
string). Here is an alternative query:

Select * From __InstanceCreationEvent Within 10 Where TargetInstance Isa
Cim_DataFile And TargetInstance.Drive = "C:" And TargetInstance.Path =

Instead of Cim_DirectoryContainsFile, this query subscribes to Cim_dataFile
creation events, which allows you to rafine results using all Cim_dataFile
properties, including Extesion.


--
urkec

My blog:
http://theadminblog.blogspot.com/

My CodeProject articles:
http://www.codeproject.com/script/Articles/MemberArticles.aspx?amid=4210975
Post Question To EggHeadCafe