[Wine] CreateFile \\\\.\\x: non-root
James McKenzie
jjmckenzie51 at earthlink.net
Sat Mar 27 21:21:58 CDT 2010
szivibuvi wrote:
> Hello,
>
> I have a usb data aquisition device interfaced by mass storage protocol. I open it like:
>
> hEcgDrive=CreateFile("\\\\.\\g:",
> GENERIC_READ | GENERIC_WRITE,
> FILE_SHARE_READ | FILE_SHARE_WRITE,
> NULL,
> OPEN_EXISTING,
> FILE_ATTRIBUTE_NORMAL | FILE_FLAG_NO_BUFFERING |
> FILE_FLAG_WRITE_THROUGH | FILE_FLAG_OVERLAPPED,
> NULL);
>
> for communication I use
>
> DeviceIoControl(hEcgDrive,
> IOCTL_SCSI_PASS_THROUGH_DIRECT,
> ....
> with a 'custom' scsi operation code as wrapper.
>
> On Wine-1.1.30. under UHU linux (2.6.23.9-1) the program can open the device only if run as root. If run as plain user, CreateFile gives ERROR_ACCESS_DENIED (5).
>
This is the clue you need. You need to change permissions of the device
ioctl (/dev entry) so that your user can access it OR add your user to
the groups with permissions to the device mount point.
James McKenzie
More information about the wine-users
mailing list