Opened 9 years ago
Last modified 8 months 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 Changed 4 years ago by Jpm
- Owner set to Jpm
- Status changed from new to assigned
comment:2 Changed 8 months ago by Jpm
- Owner changed from Jpm to Jon
Guidelines for posting comments:
- You cannot re-open a ticket but you may still leave a comment if you have additional information to add.
- In-depth discussions should take place on the forum.
For more information see the full version of the ticket guidelines here.
Fix sent to Jon