By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
459,459 Members | 1,208 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 459,459 IT Pros & Developers. It's quick & easy.

predict directory write permission under windows?

P: n/a
I want to know if I can write files into a directory before I actually
perferm the write behavor. I found os.access(path, os.W_OK) but it uses
real uid/gid to check instead of euid/egid so it doesn't fit my problem.

I don't know how to get euid/egid under windows so I cannot use the mode
infomation returned by os.stat().

Anybody give me a hint?

Jul 18 '05 #1
Share this Question
Share on Google+
2 Replies


P: n/a
On Mon, 13 Dec 2004 22:14:03 +0800, rumours say that Qiangning Hong
<ho****@gmail.com> might have written:
I want to know if I can write files into a directory before I actually
perferm the write behavor. I found os.access(path, os.W_OK) but it uses
real uid/gid to check instead of euid/egid so it doesn't fit my problem.
I didn't even know that the notion of effective uid/gid existed on
windows. Unless that's a "service" from the Run as a different user
service, but I wouldn't know.
I don't know how to get euid/egid under windows so I cannot use the mode
infomation returned by os.stat(). Anybody give me a hint?


I won't be very helpful, but Python is mostly built around the
philosophy of asking forgiveness instead of permission (the opposite of
"look before you leap", which is what you want). There are other
typical arguments (what if permissions change between your check and the
actual write? what if the directory disappears before writing? etc)
which you might think they do not apply to you, but they most probably
do.

In case you want that to update some form of UI where the user should
know in advance, well, create a dummy file in the directory (and
instantly delete it) and report success or failure.

However, if you insist on knowing something that could be false, pywin32
might offer more functions to check for permissions.
--
TZOTZIOY, I speak England very best.
"Be strict when sending and tolerant when receiving." (from RFC1958)
I really should keep that in mind when talking with people, actually...
Jul 18 '05 #2

P: n/a
My method isn't elegant, but I use tempfile to create a
tempfile in the directory (inside a try block). If it
works, closing the file makes it go away.

Larry Bates
Syscon, Inc.
Qiangning Hong wrote:
I want to know if I can write files into a directory before I actually
perferm the write behavor. I found os.access(path, os.W_OK) but it uses
real uid/gid to check instead of euid/egid so it doesn't fit my problem.

I don't know how to get euid/egid under windows so I cannot use the mode
infomation returned by os.stat().

Anybody give me a hint?

Jul 18 '05 #3

This discussion thread is closed

Replies have been disabled for this discussion.