Modify

Opened 10 years ago

Last modified 2 years ago

#3160 assigned Feature Request

Allow Null to specify NULL pointer for more DllCall() pointer types.

Reported by: Valik Owned by: Jon
Milestone: Component: AutoIt
Version: Severity: None
Keywords: Cc:

Description

I see that using the Null keyword with str and wstr parameters of DllCall() causes AutoIt to pass a NULL pointer. That's very useful. I'd like to see it extended to all pointer types. If I pass Null to a "DWORD*" it seems to treat it like I'm passing a pointer to a DWORD with value 0 as opposed to treating it as a NULL pointer. This behavior results in needing to write messy code like this:

Func FakeFunction($iParameter)
    Local $sParamType = "DWORD*"
    If $iParameter = Null Then $sParamType = "ptr"
    DllCall("fake.dll", "none", "FakeFunction", $sParamType, $iParameter)
EndFunc

FakeFunction(Null)

By allowing Null to specify a NULL pointer for all pointer types that code becomes:

Func FakeFunction($iParameter)
    DllCall("fake.dll", "none", "FakeFunction", "DWORD*", $iParameter)
EndFunc

FakeFunction(Null)

Much cleaner and easier to read and write.

Attachments (0)

Change History (2)

comment:1 by J-Paul Mesnage, 5 years ago

Owner: set to J-Paul Mesnage
Status: newassigned

Fix sent to Jon

comment:2 by J-Paul Mesnage, 2 years ago

Owner: changed from J-Paul Mesnage to Jon

Modify Ticket

Action
as assigned The owner will remain Jon.

Add Comment


E-mail address and name can be saved in the Preferences .
 
Note: See TracTickets for help on using tickets.