Without knowing anything about Delphi, I would still say yes! With all of the Visual Studio products you can read data out of the COM port as a string, character array or byte array using the MSComm control included in versions up to VS 6.0.
You can also read the data as a stream through the Win32API, but there are no events when data arrives, so you have to poll the UART to see if it has data to be processed.
And there is always TAPI, but I have never gotten TAPI to work in a fashion that I considered anywhere close to being as efficient as doing interrupt driven comms.
pansophic