Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > Perl > Perl Misc > win32api::file translation of c-code to perl: help pls

Reply
Thread Tools

win32api::file translation of c-code to perl: help pls

 
 
Susanne West
Guest
Posts: n/a
 
      04-21-2008

i have the following c-code that sould send out a
command through deviceIO using win32api::file, and
i'm struggling with the proper handling of the code.
the result of my DeviceIoControl() command is always
NULL...

#! perl
# -------------------------------
# c-code:
# define BUFF_SIZE 0x2c
# HANDLE hHandle = CreateFileA("\\\\.\\APPDRV",
# GENERIC_READ|GENERIC_WRITE, 0,
# NULL, OPEN_EXISTING, 0x80, NULL);
#
# char buffer[BUFF_SIZE];
# memset(buffer, 0, BUFF_SIZE);
# buffer[0] = 0x04;
# buffer[1] = 0x00;
# buffer[2] = 0x06;
# buffer[3] = 0x00;
# buffer[4] = 7;
# buffer[5] = 7;
#
# DWORD bytesReturned;
# BOOL result = DeviceIoControl(hHandle, 0x23209C,
# buffer, BUFF_SIZE, buffer, BUFF_SIZE, &bytesReturned, NULL);
#-------------------------------
#
#for testing, this should translate into the following:

$hDevice = createFile("\\\\.\\APPDRV", "rw", '' );
if (! $hDevice){ die("Could not open device! \n"); }
print "Device open\n"; #this seems to be working

$buffer = chr(04) . chr(0) . chr(06) . chr(0) .
7 . 7 . chr(0) . chr(0) .
chr(0) . chr(0) . chr(0) . chr(0) .
chr(0) . chr(0) . chr(0) . chr(0) .
chr(0) . chr(0) . chr(0) . chr(0) .
chr(0) . chr(0) . chr(0) . chr(0) .
chr(0) . chr(0) . chr(0) . chr(0) .
chr(0) . chr(0) . chr(0) . chr(0) .
chr(0) . chr(0) . chr(0) . chr(0) .
chr(0) . chr(0) . chr(0) . chr(0);

$res = DeviceIoControl( $hDevice, 0x23209C, $buffer, 44, $opOutBuf, 44,
$olRetBytes, $pOverlapped );
if (! $res){ print "IO control failed\n"; } # this fails


am i missing something here?

thanks for any hints...




 
Reply With Quote
 
 
 
 
smallpond
Guest
Posts: n/a
 
      04-21-2008
On Apr 21, 9:20 am, Susanne West <(E-Mail Removed)> wrote:
> i have the following c-code that sould send out a
> command through deviceIO using win32api::file, and
> i'm struggling with the proper handling of the code.
> the result of my DeviceIoControl() command is always
> NULL...
>
> #! perl


#!/usr/bin/perl
use warnings;
use strict;

> am i missing something here?
>


Yes. You are missing the error messages for your
undefined functions.
--S
 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Can you help me wit this translation attempt pls? almurph@altavista.com C Programming 8 05-06-2009 02:35 AM
URGENT - Pls help...pls recommend - laptop purchase irfansmith@gmail.com Computer Information 2 08-15-2008 11:34 PM
URGENT: Need help in setting environment variable.. pls help Rahul S. C Programming 3 11-01-2004 10:53 AM
Help newbie with Netbeans help system/javadocs pls. James Bond Java 0 08-03-2004 06:01 AM
pls, help.. i need a number..pls olabanji timothy MCSE 7 09-10-2003 04:02 PM



Advertisments