Rocket Division Software
http://www.starburnsoftware.com/forum/

New version - new surprises :-(
http://www.starburnsoftware.com/forum/starburn-sdk-f3/new-version-new-surprises-t138.html
Page 1 of 1

Author:  Alex [ Thu Sep 16, 2004 2:31 pm ]
Post subject:  New version - new surprises :-(

Hi,

I used SDK version 4.0.0 before. (With Delphi)

After I had downloaded new SDK 4.1.1., I had a lot of errors "Access violation" in my old projects. They did not work. :(

Then I've spent two days looking for this bug and have just found what surprise is included in new release of SDK.

In old version callback functions were declared using C declaration (cdecl)
In this version they are declared as standard call (stdcall)

Of course you have changed your samples but how could I know about this? I have no words.
Why the heck you did not write it in your documentations ?

Or maybe your customers are supposed to compare your sample sources line by line ?

Why do not you add a chapter about "news" in SDK help file ?
At least you should write about new features there.

Hope you will consider it in your next releases.

Thanks.

Author:  anton (staff) [ Thu Sep 16, 2004 3:03 pm ]
Post subject:  Re: New version - new surprises :-(

1) You did not update all the headers and did not rebuild your projects. There is no way for us to force you to stick with the latest files and not use mix of the old and new versions.

2) You did not need to work on it yourself. You just had to drop a message with "old code worked and new one does not" to the support team. You've paid for support, so why don't you use it?

3) You're not the only customer we have. We have to support others. In this particular case our VB users who just CANNOT use CDECL and have to work with STDCALL. We're trying to freeze the API and keep even binary compatibility (not even talking about backward source code compatibility). So we're doing our best. But there ARE exceptions.

4) If you'd have your e-mail in the news subscriptions you'd be informed about the update details. But your one is missing. We cannot send e-mail w/o user permission -- this is called SPAM.

I'm really sorry I did not say about calling conventions change in my personal e-mail. Had to write too many of them...

Thank you for understanding!

Alex wrote:
Hi,

I used SDK version 4.0.0 before. (With Delphi)

After I had downloaded new SDK 4.1.1., I had a lot of errors "Access violation" in my old projects. They did not work. :(

Then I've spent two days looking for this bug and have just found what surprise is included in new release of SDK.

In old version callback functions were declared using C declaration (cdecl)
In this version they are declared as standard call (stdcall)

Of course you have changed your samples but how could I know about this? I have no words.
Why the heck you did not write it in your documentations ?

Or maybe your customers are supposed to compare your sample sources line by line ?

Why do not you add a chapter about "news" in SDK help file ?
At least you should write about new features there.

Hope you will consider it in your next releases.

Thanks.

Author:  Alex [ Thu Sep 16, 2004 3:39 pm ]
Post subject:  How to subscribe ?

OK, Thanks for explanations.

I'm agree I had not look for this bug myself.

Quote:
You did not update all the headers and did not rebuild your projects.


I see only header - starburn.pas. Did I miss something else ?
I do not use your samplestools.pas as I have my own callback functions. You mean this file? Or some other?

Quote:
If you'd have your e-mail in the news subscriptions ...


And how to subscribe to your news. I am looking at your site and can not find any links to subscribe. In most cases such links are visible enough.

Author:  anton (staff) [ Thu Sep 16, 2004 8:17 pm ]
Post subject:  Re: How to subscribe ?

1) Good! So please next time if you'll have any problems with the SDK do not hesitate to contact us. In the other case I'll have to fire support engineers. You do not want their families to die from starvation, don't you? :-)

2) If you'd see the file StarBurn.pas the declaration of the PCALLBACK procedure it changed from CDECL to STDCALL. During execution if you'd build the code with the old header and new StarBurn.dll (*EXACTLY* your case) you should have this code executed (part of the initialization inside StarBurn.pas):

Begin
If StarBurn_GetVersion = BUILD_DATE Then Begin
Tmp := 'StarBurn.pas : StarBurn.dll version : 0x'+ IntToHex(BUILD_DATE,8);
OutputDebugString( PChar ( Tmp ) );
End
Else Begin
Tmp := 'StarBurn.pas : Invalid StarBurn.dll version : 0x'+ IntToHex(StarBurn_GetVersion,8) + '. Expected : 0x'+IntToHex(BUILD_DATE,8);
OutputDebugString( PChar ( Tmp ) );
End;

so in the debug output you'll have warnings about version mismatch. That should be a "RED LIGHT" signalling something goes wrong... It's a bad idea to ignore such a warning, don't you think so? :-)

3) During downloads (ANY) you're filling the form with the checkbox named "I want to receive RocketDivision News MailList ". Unchecked by default. So you've never asked to receive news mail... For now we've manually added you to the posting database.

Alex wrote:
OK, Thanks for explanations.

I'm agree I had not look for this bug myself.

Quote:
You did not update all the headers and did not rebuild your projects.


I see only header - starburn.pas. Did I miss something else ?
I do not use your samplestools.pas as I have my own callback functions. You mean this file? Or some other?

Quote:
If you'd have your e-mail in the news subscriptions ...


And how to subscribe to your news. I am looking at your site and can not find any links to subscribe. In most cases such links are visible enough.

Author:  Alex [ Sun Sep 19, 2004 1:39 pm ]
Post subject:  OK

Quote:
1) Good! So please next time if you'll have any problems with the SDK do not hesitate to contact us. In the other case I'll have to fire support engineers. You do not want their families to die from starvation, don't you?

OK, I'll never do it again. Let'em live and keep up really good work! :roll:

Quote:
If you'd see the file StarBurn.pas the declaration of the PCALLBACK procedure it changed from CDECL to STDCALL. During execution if you'd build the code with the old header and new StarBurn.dll (*EXACTLY* your case) you should have this code executed (part of the initialization inside StarBurn.pas):


Actually, I did not try using new dll with old header file. The problem occured because I used new both starburn.pas and dll file but my callback functions were implemented for old version of starburn.dll. In fact, this version checking would not help here.
Anyway, the problem is solved now.

Thanks for support

Author:  anton (staff) [ Sun Sep 19, 2004 9:05 pm ]
Post subject:  Re: OK

Alex,

it seems you're 100% correct. There was no way for you to bypass this "situation" :-( Sorry once again, we'll try to minimize the hurt next time (if it would be -- next time).

..and thank you for understanding! :-)

Alex wrote:
Quote:
1) Good! So please next time if you'll have any problems with the SDK do not hesitate to contact us. In the other case I'll have to fire support engineers. You do not want their families to die from starvation, don't you?

OK, I'll never do it again. Let'em live and keep up really good work! :roll:

Quote:
If you'd see the file StarBurn.pas the declaration of the PCALLBACK procedure it changed from CDECL to STDCALL. During execution if you'd build the code with the old header and new StarBurn.dll (*EXACTLY* your case) you should have this code executed (part of the initialization inside StarBurn.pas):


Actually, I did not try using new dll with old header file. The problem occured because I used new both starburn.pas and dll file but my callback functions were implemented for old version of starburn.dll. In fact, this version checking would not help here.
Anyway, the problem is solved now.

Thanks for support

Page 1 of 1 All times are UTC
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/