Windows System Software -- Consulting, Training, Development -- Unique Expertise, Guaranteed Results

Before Posting...
Please check out the Community Guidelines in the Announcements and Administration Category.

Re: [ntfsd] File size doesn't change in explore.

rod_widdowsonrod_widdowson Member - All Emails Posts: 971
> 1) When the file size is changed(request such as
> IRP_MJ_SET_INFORMATION, IRP_MJ_WRITE, etc),
> I call FsRtlNotifyFullReportChange with Filter:FILE_NOTIFY_CHANGE_SIZE.

That sounds reasonable.

> 2) I didn't find the IRP_MJ_NETWORK_QUERY_OPEN major function
> code in my driver. Is it essential?

Ah sorry, you are an FSD aren't you. In this case it is the
FastIoQueryOpen path.

Rod

发件人: Rod Widdowson <xxxxx@steadingsoftware.com>
收件人: Windows File Systems Devs Interest List <xxxxx@lists.osr.com>
发送日期: 2009/11/14 (周六) 5:28:20 下午
主 题: Re:[ntfsd] File size doesn't change in explore.

These things are often due to either

1) Not changing the size in IRP_MJ_DIRECTORY_CONTROL
2) Not changing the size in IRP_MJ_NETWORK_QUERY_OPEN

If I might also be so bold: try starting with a test application which is
less "challenging" than explorer. Ladislav's (free) Filetest
(http://www.zezula.net/) is awesome for discovering what is happening and
you only ever see one IRP at a time.

Good luck

Rod

"光凯 张" <xxxxx@yahoo.com.cn> wrote in message news:xxxxx@ntfsd...
Hi, guys

First of all, sorry for my poor english.

I got a problem about the file size.
In my file system driver, I handle the IRP_MJ_FILE_INFORMATION request.
And it passes the right value to me(I use filetest to do
NtQueryInformation).
But the explorer shows that the file size is 0 bytes. I just don't know why?
When the file size need to be changed, I set the FO_FILE_MODIFIED flag on
the FileObject, and report the change to the directory. Just hope someone
can
give me a hint. Thanks.

Here is my dispatch route to handle IRP_MJ_FILE_INFORMATION:

NTSTATUS
EnfsQueryFileInformation(
IN PENFS_IRP_CONTEXT IrpContext
)
{
//do some check...
switch (FileInformationClass) {
case FileBasicInformation:
{ // Process it and break...
}
case FileStandardInformation:
{ // Process it and break...
}
case FileInternalInformation:
{ // Process it and break...
}
case FileEaInformation:
{ // Process it and break...
}
case FileNameInformation:
{ // Process it and break...
}
case FilePostionInformation:
{ // Process it and break...
}
case FileAllInformation:
{ // Process it and break...
}
case FileNetworkOpenInformation:
{ // Process it and break...
}
case FileAttributeTagInformation:
{ // Process it and break...
}
default:
Status = STATUS_INVALID_PARAMETER;
}

// According to the status code, requeue it requst or complete the request
}


___________________________________________________________
好玩贺卡等你发,邮箱贺卡全新上线!
http://card.mail.cn.yahoo.com/


---
NTFSD is sponsored by OSR

For our schedule of debugging and file system seminars
(including our new fs mini-filter seminar) visit:
http://www.osr.com/seminars

To unsubscribe, visit the List Server section of OSR Online at
http://www.osronline.com/page.cfm?name=ListServer



___________________________________________________________
好玩贺卡等你发,邮箱贺卡全新上线!
http://card.mail.cn.yahoo.com/
Sign In or Register to comment.

Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!