how to virtualize a fileobject?

In my project,I need a specially requirement.
In my controller application(in User-Mode),if it want to open the C:\1.txt,it will open the file C:\1.txt%My#,not to open the real file C:\1.txt.
(I do the design just for a specially reqirement.So,please don’t ask why,it is a very complex problem.)

The file C:\1.txt%My# is not a real file in the FileSystem.It just a notification to my filter.My filter get the IRP_MJ_CREATE for C:\1.txt%My#,it should complete the IRP with SUCCESS!So,the FO created by IO Manager will valid.
In my Filter,will deny all IRP with the FO,except my specially FSCTL.

So,My problem is:
in my filter,How virtualize the file(c:\1.txt%My#)?That’s to say,if IO Manager issued the IRP_MJ_CREATE for C:\1.txt%My#,I can success it.And then,I can issued FSCTL to the FO?

I have read simply the sample about fatFSD and CDFSD.But the process is too complex,my aim is simple.So,I want to know a simple solution about it.