473,221 Members | 1,775 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,221 software developers and data experts.

Create a semaphore and specify access rights to everyone?


I'm having trouble creating a Semaphore with read-access rights for
everyone. Originally I was trying to use this code:

semaphore = new Semaphore(maxLocks, maxLocks, "RwLock#" + name);

but when using that code to create a Semaphore instance for an
existing system semaphore (i.e., the second time the code gets hit), I
get an UnauthorizedAccessException. So I tried specifying that
everyone has read rights:
var sec = new SemaphoreSecurity();
sec.AddAccessRule(new SemaphoreAccessRule("Everyone",
SemaphoreRights.ReadPermissions, AccessControlType.Allow));

bool createdNew;

semaphore = new Semaphore(maxLocks, maxLocks, "RwLock#" + name, out
createdNew, sec);
But I still get the same error.

The error occurs when running unit tests and happens even when
creating the Semaphore twice in the same process with the same user.
I'm only creating the Semaphore in .NET from this one application.

The full error is

System.UnauthorizedAccessException: Access to the port is denied.
at System.IO.Ports.InternalResources.WinIOError(Int32 errorCode,
String str)
at System.Threading.Semaphore..ctor(Int32 initialCount, Int32
maximumCount, String name, ref Boolean createdNew, SemaphoreSecurity
semaphoreSecurity)
at Common.InterProcessReaderWriterLock..ctor(String name, Int32
maxLocks) in InterProcessReaderWriterLock.cs: line 39

Any help would be appreciated.

Thanks,

Sam


------------------------------------------------------------
We're hiring! B-Line Medical is seeking .NET
Developers for exciting positions in medical product
development in MD/DC. Work with a variety of technologies
in a relaxed team environment. See ads on Dice.com.
Jun 27 '08 #1
0 2196

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

7
by: Bastian Hammer | last post by:
Hi Im wondering why there are so few examples with Semaphore. Is it obsolete? Ive got a Class Data. It offers 2 Threads methods for updating, editing, .. a private dictionary. Now I...
4
by: Ron Vecchi | last post by:
I a runnning w2k3 pop3 mail server that came with iis6. I would like to write an application that progammtically creates the new mailboxes in an already established mail domain. Does anyone know...
6
by: Chad Crowder | last post by:
Getting the following error on my production server whether the file exists or not: "System.IO.IOException: Cannot create a file when that file already exists." Here's the code generating the...
4
by: Martin | last post by:
Hi, I am getting an "Access Denied" error when attempting to browse asp.net pages. I have installed ASP.NET 1.1.4322 on a domain controller. The machine also has ASP.NET 1.0.3705 installed on...
0
by: Torsten Valentin | last post by:
Hi! I have to write a program that should create a new directory ("c:\test") and share that directory with read-access for everyone and read-write-access for administrators. How do I do that in...
0
by: Torsten Valentin | last post by:
Hi! I am working on a program that should create a new directory ("c:\test") and share that directory with read-access for everyone and read-write-access for administrators. How do I do that in...
24
by: Lauren Wilson | last post by:
OK, I'm confused. SOME folks here seem to be saying it IS possible to link to or otherwise access and manipulate MDB files stored on a web server (from the client) and others seem to be saying...
0
by: y2ktan | last post by:
Hi everyone, I had a windows application that written using semaphore and I want to convert it into WinCE. However, I found that in Compact Framework 2.0 SP2 does not contain semaphore class in...
5
by: GHUM | last post by:
hello, in my application I am using hSem = win32event.CreateSemaphore (None, 1, 1,"stringincludinginterfaceandport") rt=win32event.WaitForSingleObject (hSem, 0) if rt !=...
3
isladogs
by: isladogs | last post by:
The next Access Europe meeting will be on Wednesday 3 Jan 2024 starting at 18:00 UK time (6PM UTC) and finishing at about 19:15 (7.15PM). For other local times, please check World Time Buddy In...
0
by: mar23 | last post by:
Here's the situation. I have a form called frmDiceInventory with subform called subfrmDice. The subform's control source is linked to a query called qryDiceInventory. I've been trying to pick up the...
0
by: abbasky | last post by:
### Vandf component communication method one: data sharing ​ Vandf components can achieve data exchange through data sharing, state sharing, events, and other methods. Vandf's data exchange method...
2
by: jimatqsi | last post by:
The boss wants the word "CONFIDENTIAL" overlaying certain reports. He wants it large, slanted across the page, on every page, very light gray, outlined letters, not block letters. I thought Word Art...
2
isladogs
by: isladogs | last post by:
The next Access Europe meeting will be on Wednesday 7 Feb 2024 starting at 18:00 UK time (6PM UTC) and finishing at about 19:30 (7.30PM). In this month's session, the creator of the excellent VBE...
0
by: fareedcanada | last post by:
Hello I am trying to split number on their count. suppose i have 121314151617 (12cnt) then number should be split like 12,13,14,15,16,17 and if 11314151617 (11cnt) then should be split like...
0
by: stefan129 | last post by:
Hey forum members, I'm exploring options for SSL certificates for multiple domains. Has anyone had experience with multi-domain SSL certificates? Any recommendations on reliable providers or specific...
0
Git
by: egorbl4 | last post by:
Скачал я git, хотел начать настройку, а там вылезло вот это Что это? Что мне с этим делать? ...
1
by: davi5007 | last post by:
Hi, Basically, I am trying to automate a field named TraceabilityNo into a web page from an access form. I've got the serial held in the variable strSearchString. How can I get this into the...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.