General information
Category:
Windows API functions
>edward,
>your problem is most probably that you are returning a pointer to a string
>from
>and your function type is char (single character)
>
>Arnon
>
>
>>
>>I wrote a small dll that calls the localtime() function in Visual C++ 5.0.
>>When I call this function,ConvertTime(), I get a memory error. The dll
>>works fine because I can call the test() function. I am a Foxpro
>>programmer, not a C++ programer, and I can't figure out what I am doing
>>wrong. Could someone help? Here is
>> the code:
>>
>
>> ///////////////////////////////////////
>> //
>> // ConvertTime()
>> //
>> ///////////////////////////////////////
>>
>> char ConvertTime(void)
>> {
>> struct tm *newtime;
>> time_t aclock;
>> char* rtntime;
>>
>> aclock=8067157205;
>>
>> newtime = localtime(&aclock);
>>
>> rtntime = asctime(newtime);
>>
>> return(*rtntime);
>>
>> }
>>
Arnon:
How do I allow the function to return a string. As near as I can tell, you can't declare the function return type as "string".
I've declared the dll in VFP as such:
DECLARE STRING ConvertTime IN Timeconv AS ConvertTime
So how do I make ConvertTime() (code above) return a string?
Ed
>>
>> /////////////////////////////////////
>> //
>> // test()
>> ////////////////////////////////////
>>
>> int rtn ;
>>
>> char test(void)
>> {
>> rtn = 6;
>> return (rtn);
>> }
>>
>>
>> Here is the .def file
>>
>> ;;;;;;;;;;;;;;;;;;;;;;
>> ;
>> ; timeconv.def
>> ;
>> ;;;;;;;;;;;;;;;;;;;;;;;;;
>>
>> LIBRARY timeconv
>> CODE PRELOAD MOVEABLE DISCARDABLE
>> DATA PRELOAD SINGLE
>>
>> EXPORTS
>> ConvertTime
>> test
>>
>>
>> Thanks
>>
>> Ed
>>
>> Thanks, Ed
>>
>>
Previous
Next
Reply
View the map of this thread
View the map of this thread starting from this message only
View all messages of this thread
View all messages of this thread starting from this message only