Robert Gilland
Members-
Content Count
33 -
Joined
-
Last visited
Everything posted by Robert Gilland
-
I borrowed the below function from jclPrint.pas using Delphi 10.4.2 When function is called the entire process fails. What could be wrong. function GetPrinterResolution: TPoint; begin Result.X := GetDeviceCaps(Printer.Handle, LogPixelsX); Result.Y := GetDeviceCaps(Printer.Handle, LogPixelsY); end;
-
Yes I did that.
-
By sheer exasperation, I removed the conditionals for FASTMM4 LogMemoryLeakDetailToFile and FullDebugMode. And then GetDeviceCaps worked, no idea why. Another day of banging my head against the wall ends miraculously, Thank God.
-
I am using the have an Interbase database with an Interbase2020 server. I have a table with a field of TYPE CHAR(6) DOMAIN CALLED INVOICECODE in it's primary key I call ALTER DOMAIN INVOICECODE TYPE CHAR(10) I get "unsuccessful metadata update MODIFY RDB$FIELDS failed action cancelled by trigger (1) to preserve data integrity RDB$TRIGGER_39 Cannot update index segment used by an Integrity Constraint" What can I do?
-
I have been given this system to look at in order to place a Delphi app inside a web browser: https://thinfinity-vui-v3-docs.cybelesoft.com/ Has anyone else tried to do this? Has anyone tried to use thinfinity?
-
curl-example for POST works, Delphi code throws an 404
Robert Gilland replied to philipp.hofmann's topic in Network, Cloud and Web
I am trying the same and with TNetHttpClient and getting an error: Error adding header: (87) The parameter is incorrect when I have an authorization header. -
Safe Array Definition inside Type LIbrary Editor
Robert Gilland posted a topic in RTL and Delphi Object Pascal
I am using Delphi 10.2. How do I define an array of records in the type library editor? -
How to rearrange projects in projects group file?
Robert Gilland posted a topic in Delphi IDE and APIs
I have a ALL.groupproj file, and I want to rearrage the order of the projects contained within, how do I do that? Using Delpho 10.2 -
I cannot understate the necessity to handle TLS1.3!
-
I am having real trouble trying to create an SQLLite Database at runtime in Android. Does anyone know how to do this?
-
Android Create SQLLite Database at Runtime.
Robert Gilland replied to Robert Gilland's topic in Databases
Previous code was procedure Tdtmdl.CheckDatabaseExists; var EmptyDB: string; begin if not FileExists(DBPath) then begin EmptyDB := DocumentsFolderPath + 'empty.sqlite'; TFile.Copy(EmptyDB, DBPath); end; end; procedure Tdtmdl.ConfigureDatabaseAndTable; var SQL: string; SL: TStringList; begin // if fActiveApp = TActiveApp.aaNone then exit; cnctnDB.Params.Values['Database'] := DBPath; CheckDatabaseExists; try cnctnDB.Connected := true; except on e:Exception do begin end; end; -
I cannot find any component that converts pdf to png, or png to pdf, that in not .NET. Has anyone found any?
-
We are trying to run this code as a linux service and the service is freezing. Can this code work under linux service conditions?
-
Android Create SQLLite Database at Runtime.
Robert Gilland replied to Robert Gilland's topic in Databases
Victory: I created an empty file fist by this method and then all good: lsDBPath := DBPath; if( not FileExists(lsDBPAth))then begin lhandle := System.SysUtils.FileCreate(lsDBPath); System.SysUtils.FileClose(lhandle); end; cnctnDB.Params.Values['Database'] := lsDBPath; cnctnDB.Params.Values['SQLiteAdvanced'] := 'page_size=4096'; cnctnDB.Params.Values['OpenMode'] := 'ReadWrite'; -
It seems to me that this library requires gnome or kde installed is that correct? I am getting an access violation when the GtkWindowNew function is called, so I am guessing the Linux box needs a GUI installed to run this code. Is that right? LibGDKHandle := LoadLibrary(PChar(LIB_GDK)); if LibGDKHandle = 0 then raise Exception.Create('libgdk-3 not found.'); GdkAtomIntern := GetProcAddress(LibGDKHandle, 'gdk_atom_intern'); LibGLibHandle := LoadLibrary(PChar(LIB_GLIB)); if LibGLibHandle = 0 then raise Exception.Create('GLIB 2 is required to be installed.'); GFree := GetProcAddress(LibGLibHandle, 'g_free'); IntClipboardOwner := GtkWindowNew(0);
-
Okay, but where do you deploy it to, what target platform? ie, how to get the built apk to the MacOS Transporter from Delphi 11.3?
-
Typing single quite in IDE produces strange characters
Robert Gilland posted a topic in Delphi IDE and APIs
I am using Delphi 11.3 I type a single quote in my IDE editing a pascal unit, and the quote does not appear until I press the space character. What is happening? More than this if I press a capital C after the single quote, I get a C with a tail underneath it. Very strange. -
After all this, The SynPDF library is not compiling under Linux (ALexandria 11.3)
-
Thanks Alexander, This code is windows specific. I am attempting to convert it to firemonkey code so it can run under linux. This is what I have so far. O don't know how to replace TGPBitmap to a firemonkey equivalent. var PrintDoc : THtDocument; li, liPageCount : Integer; locanvas : THtCanvasFMX; loBitMap : TBitmap; loScene : THtCanvasScene; loRect : TRect; loImage : TGPBitmap; begin PrintDoc := THtDocument.Create(THtCanvasFMX.PrintCanvasClass); // Convert PDF to HTML and parse result PrintDoc.Parse(THtDocumentConverter.FiletoHTML(psPDFFile)); // Make paged layout if( LandScape )then PrintDoc.GeneratePagesForPrint(297,210) else PrintDoc.GeneratePagesForPrint(210, 297); // SetLength(PNG, D.Surface.PageCount); FLoadPNGs.Clear; for li := 0 to PrintDoc.Surface.PageCount - 1 do begin locanvas := THtCanvasFMX.Create; try loBitMap := TBitmap.Create(PrintDoc.Surface.Pages[li].WidthPx ,PrintDoc.Surface.Pages[li].HeightPx); try // Render page loRect.Create(0,0,PrintDoc.Surface.Pages[li].WidthPx ,PrintDoc.Surface.Pages[li].HeightPx); loScene.Init(loRect, loBitMap.Canvas); locanvas.BeginScene(loScene); THtPageMeta(PrintDoc.Surface.Pages[li]).Meta.Play(locanvas); locanvas.EndScene; // Save to PNG loImage := TGPBitmap.Create(loBitMap.Handle, loBitMap.Palette); try GetEncoderClsid('image/png', PNGEncoder); BS := TBytesStream.Create(nil); SA := TStreamAdapterFix.Create(BS, soOwned) as IStream; Image.Save(SA, PNGEncoder); PNG[i] := Copy(BS.Bytes, 0, BS.Size); finally Image.Free end; finally B.Free end; finally C.Free end
-
I have now received the latest html components library, and have successfully generated a PDF from a list of PNG files (thank you). However, I cannot find anything within the html component library that will export PDF file to PNG Files.
-
https://delphihtmlcomponents.com/office.html looks like it's task is to covert to HTML. It doesn't say it can convert PDF to PNG or PNG to PDF.
-
I currently use Web Services Tool kit (https://wiki.freepascal.org/Web_Service_Toolkit) To generate WSDL documents, and server side implementation classes which I override to implement a SOAP web service. It is fantastic. I am looking to migrate to REST services. I have gone through all of the demos of the MARS-Curiosity REST Library. I cannot find anywhere where I can define my GET/POST/PUT API's . And then plug in my service side Delphi code. I find no instructions on how to even start building REST API's.
-
How to even start? WSDL to REST
Robert Gilland replied to Robert Gilland's topic in MARS-Curiosity REST Library
That sounds great. My current plan is to see if I can use the OpenAPI demo as a basis and see if I can get something actually working. I am a bit lost as to how to GET a large binary file (5MB) with MARS. Everything right now is explorative. As I already have implemented all this functionality in WSDL. -
How to even start? WSDL to REST
Robert Gilland replied to Robert Gilland's topic in MARS-Curiosity REST Library
Thank you Andrea, I have already done what you describe, and I don't know how to move forward from this skeleton application. I am used to generating the interface in WSDL using Web Services Tool kit and then having the Tool Kit auto generate Delphi classes I can easily plug my actual Delphi data access code in. It does not seem that is possible in REST. It would be good to be able to build a YAML file and then have a set of pascal classes created to actually implement the REST service. Maybe I have completely missed the point. Kind Regards, Robert Gilland. -
I have Delphi 11.3, I run remote debugging and I get no blue dots. I have Optimisation OFF, Stack Frames ON, Debug Information ON, Use Debug DCUs ON, Include Remote Debug Symbols ON, Place debug information in separate TDS File ON, Map File Detailed. When I call Load Process I get no Blue Dots. Any Ideas?