ttamturk Posted November 7, 2014 Posted November 7, 2014 Hi, I had a really strange problem. I recently upgrade my system to XE7 and move all my projects to new version. They are working properly except one and it's working properly too Confusing? Yes, it is. I make a new DLL with XE7 and put it under the same folder which our software runs (with Apache 2.2). Our original DLL name is EDSWEB, and i placed new dll as EDSBETA. We start testing this new DLL and it's working for 2 days perfectly. Yesterday, we decided to use new DLL completely and i stop Apache Httpd, remove old EDSWEB.DLL and rename EDSBETA.DLL to EDSWEB.DLL and bam, It's not working. Login page comes, but Query objects starts to raise Access Violation error everywhere. I stopped Apache, clear cahce-temp everything i know which can make a problem. Clear browser cahce etc. But still it's not working. I put old DLL back, and rename new DLL to EDSBETA again, and now both of them working! Do you have any idea what is this about? Quote
Administrators Farshad Mohajeri Posted November 7, 2014 Administrators Posted November 7, 2014 Access Violation Exact message? Quote
ttamturk Posted November 7, 2014 Author Posted November 7, 2014 EDSWEB: 00000688: 14:28:47 [ExtFunctions:DBExecute]:Access violation at address 0475EB79 in module 'EDSWEB.dll'. Read of address 03F7405 This is from my logging. [ExtFunctions:DBExecute], this is my funtion and it's just run a sql command. Quote
Administrators Farshad Mohajeri Posted November 7, 2014 Administrators Posted November 7, 2014 Instead of renaming DLL try changing its name in Delphi project. Quote
ttamturk Posted November 7, 2014 Author Posted November 7, 2014 Delphi project compiles as EDSWEB.dll same as original. If i compile a new one and try to use, it's not working either. If i change back to EDSBETA it's starts working. Quote
Administrators Farshad Mohajeri Posted November 7, 2014 Administrators Posted November 7, 2014 I don't understand. If you change the project name to EDSBETA1 in Delphi will it work again in server? Quote
ttamturk Posted November 7, 2014 Author Posted November 7, 2014 Yes, it's working. It's not working with original name but old dll is working with original name. Quote
ttamturk Posted November 7, 2014 Author Posted November 7, 2014 I remove Apache from user's server and return back to iis and with iis, new version starts to work. I thought it's apache's doing and when i saw it's working i decided that was apache's doing. But after 5-10 minutes of usage it starts givin access violation everywhere too. Now, i return back to delphi2007 version of my dll. Quote
Administrators Farshad Mohajeri Posted November 7, 2014 Administrators Posted November 7, 2014 The more you describe the more I get confused Is your XE7 version 64-bit? What is type of your query objects?? Quote
Administrators Farshad Mohajeri Posted November 7, 2014 Administrators Posted November 7, 2014 Delphi project compiles as EDSWEB.dll same as original. If i compile a new one and try to use, it's not working either. If i change back to EDSBETA it's starts working. Weird! Quote
ttamturk Posted November 11, 2014 Author Posted November 11, 2014 Hi, I have an updated news about this problem. It seems there is a problem with MainModule/ServerModule with XE7+Unidac5.5.12(Probably). Because, when i start my apache server my new dll with XE7 32 bit can't create a connection to server but if i start our software with old dll D2001+UniDac3.5, it can create an instance and a connection. After these are created one time, my dll works perfectly fine. I think, uniGUI creates a single instance and connection for a web-server and using different dll's doesn't count (create new instance's for theirselves). But i don't really know what's wrong with new dll and why it can't create instance/conneciton and get access violation. I found, there is a difference between UniDAC 3.5 and 5.5 which is 3.5 uses non encrypted password and 5.5 uses an encrypted password. It may be related with this. Quote
Administrators Farshad Mohajeri Posted November 11, 2014 Administrators Posted November 11, 2014 Do you have anything on ServerModule? Quote
Administrators Farshad Mohajeri Posted November 11, 2014 Administrators Posted November 11, 2014 Make sure your design time Connected property of TUniConnection is False and you set it to True in your code. Quote
ttamturk Posted November 13, 2014 Author Posted November 13, 2014 Hi, I solve my problem but you will not gonna believe this. All problem is caused by FastReport's Drag'n Drop components like frxOLEObject, frxRichObject etc. If you have any of these in your project, something goes wrong and starts to raise Access Violation error for every UniDAC object. I cleared them and just leave frxPDFExport object and now it's working just fine. My System; Delphi XE7 UniGUI o.97.1085 UniDAC 5.5.12 FastReport 5.1.8 I am gonna try this with upgraded version of UniGUI today or tomorrow. Best regards Quote
Administrators Farshad Mohajeri Posted November 13, 2014 Administrators Posted November 13, 2014 Thanks for update. Unfortunately sometimes FastReport components can lead to such strange errors. I recommend everyone to use Fastreports in server mode. Quote
rencarnacion Posted November 13, 2014 Posted November 13, 2014 I rather use ReportBuilder is better for work with web applications. Quote
ttamturk Posted November 14, 2014 Author Posted November 14, 2014 Thanks, and i know but i can't use another system or way ( Quote
zilav Posted November 14, 2014 Posted November 14, 2014 Create a separate webbroker ISAPI module that will generate pdfs with FastReport and accept parameters via url. 1 Quote
ttamturk Posted November 18, 2014 Author Posted November 18, 2014 Create a separate webbroker ISAPI module that will generate pdfs with FastReport and accept parameters via url. Yes, i thouth that too and begun to work. I create a web service and use it for exporting reports to pdf, then showing in browser. Everythings works as it has to be. But, Images not working? FastReport, exports bu i don't know why images does not included or couldn't displayed. I have a strange problem with images too with another module doh. My banner images displayed when i run my project from local, but when i make a dll and put it under a web server, images does not displayed! Maybe, they are related. Do you have any idea why those images couldn't displayed? Best Quote
chefdackel Posted November 18, 2014 Posted November 18, 2014 Yes, i thouth that too and begun to work. I create a web service and use it for exporting reports to pdf, then showing in browser. Everythings works as it has to be. But, Images not working? FastReport, exports bu i don't know why images does not included or couldn't displayed. I have a strange problem with images too with another module doh. My banner images displayed when i run my project from local, but when i make a dll and put it under a web server, images does not displayed! Maybe, they are related. Do you have any idea why those images couldn't displayed? Best I really do not use FastReport, but check if the images are integrated into the report using absolute paths, so this path may change when you deploy to the webserver? brfc Quote
ttamturk Posted November 18, 2014 Author Posted November 18, 2014 I really do not use FastReport, but check if the images are integrated into the report using absolute paths, so this path may change when you deploy to the webserver? brfc Maybe if they are normal image ogjects but they are dbimage objects so there is no path. Same thing for unipicture objects which are not path realted but can't show images. I'll keep reseach for a solution. Thanks for your help, best. Quote
ttamturk Posted November 18, 2014 Author Posted November 18, 2014 Hi, I solve problem with FastReport images, it's not related to uniGUI. v5.1.8 is a new realese for XE7 and there is a bug in frxExportPDF.pas. If anyone has same problem just open source and locate to; Line Number : 3022 Code : if dots[ix].Alpha <> 255 then Change : if dots[ix].Alpha <> 0 then Best. 3 Quote
rencarnacion Posted November 12, 2015 Posted November 12, 2015 I use ReportBuilder and I never have problem with my reports Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.