# (no subject)

**URL:** <https://www.ruby-forum.com/t/no-subject/135994>\
**Category:** Ruby\
**Created:** [April 27, 2008, 7:40pm UTC](https://www.ruby-forum.com/t/no-subject/135994 "2008-04-27T19:40:31Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![dnstevenson](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/8dc957/32.png) [@dnstevenson](https://www.ruby-forum.com/u/dnstevenson)\
**Post date:** [April 27, 2008, 7:40pm UTC](https://www.ruby-forum.com/t/no-subject/135994/1 "2008-04-27T19:40:31Z")

</div>

I’m trying to use win32/file to set permission on a file, but I can’t  
seem  
to get it working. Here’s what I’ve tried

require “win32/file”  
File.set\_permissions(“C:\foo.txt”, {“Domain\username” =\> 2032127})

and I get this error

:/ruby/lib/ruby/gems/1.8/gems/win32-file-0.5.5/lib/win32/file.rb:212:in  
`set\_permissions’: The access control list (ACL) structure is invalid.  
(ArgumentError)

I can read permissions I just can’t set them.

---

<div class="post-metadata">

**Author:** ![dnstevenson](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/8dc957/32.png) [@dnstevenson](https://www.ruby-forum.com/u/dnstevenson)\
**Post date:** [April 28, 2008, 4:10am UTC](https://www.ruby-forum.com/t/no-subject/135994/2 "2008-04-28T04:10:06Z")

</div>

Hi,

Dave S. wrote:

> I’m trying to use win32/file to set permission on a file, but I can’t  
> seem  
> to get it working. Here’s what I’ve tried
> 
> require “win32/file”  
> File.set\_permissions(“C:\foo.txt”, {“Domain\username” =\> 2032127})
> 
> and I get this error
> 
> :/ruby/lib/ruby/gems/1.8/gems/win32-file-0.5.5/lib/win32/file.rb:212:in  
> `set\_permissions’: The access control list (ACL) structure is invalid.  
> (ArgumentError)

In the current version, it means the given account do not exist.  
The misleading message must be modified.

Inserting the following line at file.rb #158 will solve this problem.

if sid.strip == “”  
raise ArgumentError, ‘Account does not exist’  
end

> I can read permissions I just can’t set them.

Try this:

perm = File.get\_permissions(“C:\foo.txt”)  
p perm  
File.set\_permissions(“C:\foo.txt”,perm)

Regards,  
Park H.
