I know the latest update fixes problems with viewing help files in Vista, but did PB (or someone else) port the Win32Api.hlp to be Vista viewable?
I am stuck at a point porting code from VB to PB and before asking, I thought I would check the help files, and just realized my only Win32Api.hlp is a *.hlp file that I can NOT open on a VISTA machine (yet another reason I did not want to get the latest Windows, but forced to so I can solve customers questions that are becoming more and more frequent)
Anyways for what WAS a simple api porting question.
I have a line where:
where it expected a result (guessing False if passed or some value for GetLastError)
unfortunately from my Win32Api.INC the only reference is a subroutine for RtlMoveMemory so no return values (and I can not check at the moment without going to MSDN, which usually becomes a :headbut: because they always throw in some confusing C example that has barely any meaning on just the function. which is why I like PB's Documentation (Although I wish they would show a PB example) but at least they only explain what it does and not more confusing data so I am not up all night figuring out what the heck I am supposed to do with the function just to wind up
)
Anyways From the Win32Api.INC they are using subs, where many of mine from languages expect a value returned from a function. so I hoped until I can get back to XP machine maybe someone could post why these are now subs?
(Meanwhile, I will see if I can keep porting but take my best guesstimation on what I think instinctively would be happening.)
PS. Anyone with help finding a PB Win32Api.hlp for Vista would be a MEGA help since I am stuck till the end of the weekend (or maybe its on the list "of things to be done") ?
I am stuck at a point porting code from VB to PB and before asking, I thought I would check the help files, and just realized my only Win32Api.hlp is a *.hlp file that I can NOT open on a VISTA machine (yet another reason I did not want to get the latest Windows, but forced to so I can solve customers questions that are becoming more and more frequent)
Anyways for what WAS a simple api porting question.
I have a line where:
Code:
Result = RtlMoveMemory(ppData(0), PreparsedData, 30)
unfortunately from my Win32Api.INC the only reference is a subroutine for RtlMoveMemory so no return values (and I can not check at the moment without going to MSDN, which usually becomes a :headbut: because they always throw in some confusing C example that has barely any meaning on just the function. which is why I like PB's Documentation (Although I wish they would show a PB example) but at least they only explain what it does and not more confusing data so I am not up all night figuring out what the heck I am supposed to do with the function just to wind up

Anyways From the Win32Api.INC they are using subs, where many of mine from languages expect a value returned from a function. so I hoped until I can get back to XP machine maybe someone could post why these are now subs?
(Meanwhile, I will see if I can keep porting but take my best guesstimation on what I think instinctively would be happening.)
Code:
' Declares from winnt.h ======================================================= ' DECLARE SUB MoveMemory LIB "KERNEL32.DLL" ALIAS "RtlMoveMemory" (pDestination AS ANY, pSource AS ANY, BYVAL cbLength AS LONG) #IF %DEF(%USEMACROS) MACRO CopyMemory (pDestination, pSource, cbLength) MoveMemory pDestination, pSource, cbLength END MACRO MACRO FillMemory (pDestination, cbLength, bFill) MACROTEMP ix, pDest LOCAL ix AS LONG LOCAL pDest AS BYTE PTR pDest = pDestination FOR ix = 1 TO cbLength @pDest = bFill INCR pDest NEXT END MACRO MACRO ZeroMemory (pDestination, cbLength) FillMemory(pDestination, cbLength, 0) END MACRO MACRO FUNCTION MAKELANGID (p, s) MACROTEMP result LOCAL result AS DWORD result = s SHIFT LEFT result, 10 END MACRO = (result OR p) #ELSE SUB CopyMemory (BYVAL pDestination AS DWORD, BYVAL pSource AS DWORD, BYVAL cbLength AS LONG) MoveMemory BYVAL pDestination, BYVAL pSource, cbLength END SUB SUB FillMemory (BYVAL pDestination AS DWORD, BYVAL cbLength AS LONG, BYVAL bFill AS BYTE) LOCAL ix AS LONG LOCAL pDest AS BYTE PTR pDest = pDestination FOR ix = 1 TO cbLength @pDest = bFill INCR pDest NEXT END SUB SUB ZeroMemory (BYVAL pDestination AS DWORD, BYVAL cbLength AS LONG) FillMemory pDestination, cbLength, 0 END SUB FUNCTION MAKELANGID (BYVAL p AS WORD, BYVAL s AS WORD) AS WORD SHIFT LEFT s, 10 FUNCTION = s OR p END FUNCTION #ENDIF
Comment