| Welcome, Guest |
You have to register before you can post on our site.
|
| Online Users |
There are currently 467 online users. » 1 Member(s) | 462 Guest(s) Applebot, Bing, Google, Yandex, whizzlihaltbran1975
|
| Latest Threads |
Image question on tiwjqdb...
Forum: IntraWeb General Discussion
Last Post: alex.trejo@tttnet.com.mx
Yesterday, 12:19 AM
» Replies: 4
» Views: 4,175
|
TIWjQDBGrid erratic behav...
Forum: IntraWeb General Discussion
Last Post: alex.trejo@tttnet.com.mx
Yesterday, 12:04 AM
» Replies: 4
» Views: 561
|
CSS file not reloading af...
Forum: IntraWeb General Discussion
Last Post: Gustave
06-30-2026, 09:00 PM
» Replies: 0
» Views: 34
|
IW 16.2.0 Missing librari...
Forum: IntraWeb General Discussion
Last Post: Gregory_Twedt
06-24-2026, 04:40 AM
» Replies: 5
» Views: 735
|
VCL conversion
Forum: Delphi General Discussion
Last Post: tobenschain
06-20-2026, 05:00 AM
» Replies: 0
» Views: 114
|
TIWjQDBGrid changing UI
Forum: IntraWeb General Discussion
Last Post: BoostedCruiser
06-08-2026, 02:02 AM
» Replies: 36
» Views: 70,624
|
Access Violation When Val...
Forum: IntraWeb General Discussion
Last Post: Alexandre Machado
06-03-2026, 08:47 AM
» Replies: 2
» Views: 559
|
Bootstrap5
Forum: IntraWeb General Discussion
Last Post: geraldtatum
06-02-2026, 06:24 AM
» Replies: 1
» Views: 449
|
weakpackageunit contains ...
Forum: IntraWeb General Discussion
Last Post: rlebeau
05-26-2026, 04:56 PM
» Replies: 4
» Views: 620
|
Custom 404 handler
Forum: IntraWeb General Discussion
Last Post: CfawesDwale
05-21-2026, 08:02 AM
» Replies: 0
» Views: 287
|
|
|
| TidSmtpServer hangs on some connections |
|
Posted by: bluewwol - 01-06-2019, 07:50 PM - Forum: Indy
- Replies (2)
|
 |
Hi,
I am hoping for some advice on how to proceed to resolve the following incoming mail issue.
Ordinarily transactions come in like this and are handled perfectly
Code: 70.xxx.xxx.xxx:55906 Stat Connected.
70.xxx.xxx.xxx:55906 Sent 1/6/2019 6:36:45 PM: 220 Welcome to WWOL Server<EOL>
70.xxx.xxx.xxx:55906 Recv 1/6/2019 6:36:45 PM: EHLO mx01.kmtel.com<EOL>
70.xxx.xxx.xxx:55906 Sent 1/6/2019 6:36:45 PM: 250-Hello mx01.kmtel.com<EOL>250-AUTH LOGIN<EOL>250-ENHANCEDSTATUSCODES<EOL>250-PIPELINING<EOL>250-SIZE 0<EOL>250-CHUNKING<EOL>250-8BITMIME<EOL>250 BINARYMIME<EOL>
70.xxx.xxx.xxx:55906 Recv 1/6/2019 6:36:45 PM: MAIL FROM:<MAILER-DAEMON@kmtel.com> SIZE=10078<EOL>
70.xxx.xxx.xxx:55906 Sent 1/6/2019 6:36:45 PM: 250 2.1.0 MAILER-DAEMON@kmtel.com Address Okay<EOL>
70.xxx.xxx.xxx:55906 Recv 1/6/2019 6:36:45 PM: RCPT TO:<info@domain.com><EOL>
70.xxx.xxx.xxx:55906 Sent 1/6/2019 6:36:45 PM: 250 2.1.5 info@domain.com Address Okay<EOL>
70.xxx.xxx.xxx:55906 Recv 1/6/2019 6:36:46 PM: DATA<EOL>
70.xxx.xxx.xxx:55906 Sent 1/6/2019 6:36:46 PM: 354 Start mail input; end with <CRLF>.<CRLF><EOL>
however for some the negotiation looks like this
Code: 52.xxx.xxx.xxx:60351 Stat Connected.
52.xxx.xxx.xxx:60351 Sent 1/6/2019 6:34:44 PM: 220 Welcome to WWOL Server<EOL>
52.xxx.xxx.xxx:60351 Recv 1/6/2019 6:34:44 PM: EHLO NAM01-BY2-obe.outbound.protection.outlook.com<EOL>
52.xxx.xxx.xxx:60351 Sent 1/6/2019 6:34:44 PM: 250-Hello NAM01-BY2-obe.outbound.protection.outlook.com<EOL>250-AUTH LOGIN<EOL>250-ENHANCEDSTATUSCODES<EOL>250-PIPELINING<EOL>250-SIZE 0<EOL>250-CHUNKING<EOL>250-8BITMIME<EOL>250 BINARYMIME<EOL>
52.xxx.xxx.xxx:60351 Recv 1/6/2019 6:34:44 PM: MAIL FROM:<> SIZE=83225<EOL>RCPT TO:<info@domain.com><EOL>
52.xxx.xxx.xxx:60351 Stat Disconnected.
the difference here is the remote server is compounding the mail from and rcpt to transactions into a single transaction and when this happens Indy never responds to the transaction and the thread hangs until it is cleaned up several minutes later.
Unfortunately several domains including the microsoft domains do this and for me this constitutes a very large number of messages.
I am hoping someone can advise a way to work around this issue.
Thanks for any guidance,
-Allen
I experienced the issue above with PIPELINING set to true. Changing that to false causes everything to function as expected.
I guess that answers my question, sorry for the silly question, unless there is something I ought to have done to enable pipeling to function properly.
-Allen
|
|
|
| FpGetTimeOfDay gives no timezone |
|
Posted by: jollytall - 01-04-2019, 03:59 PM - Forum: Indy
- Replies (6)
|
 |
I try to use Indy objects for sending e-mail in a Linux system (Debian 9, Lazarus 2.0.0.RC3, Indy 10).
The time of the message received by the recepients is wrong. I debuged what Indy does and it uses FpGetTimeOfDay to format an internet datetime string, e.g. in LocalDateTimeToGMT(), ultimately using OffsetFromUTC. According to the manual of GetTimeOfDay (http://man7.org/linux/man-pages/man2/get...day.2.html) the timezone parameter is obsolate and always returns 0 in Linux. This is indeed what I see.
Is there a workaround known, or shall I try to fix it myself (rewriting OffsetFromUTC in IdGlobal)?
Thanks,
|
|
|
| Random HTTP 500 errors Session not found errors |
|
Posted by: jbkar2 - 01-03-2019, 05:09 AM - Forum: IntraWeb General Discussion
- Replies (3)
|
 |
Hi
I am using Intraweb 14.2.8 and one of our clients are having issues with our application. They are getting "This page can't be displayed" at random times when performing an update or action in the Intraweb Application. This error message appears randomly and does not affect all users. the frequency varies during use of the application. Sometime when clicking Fix connection problems, the application page reappears again and if that is not successful they have to restart the application with a new session. The error message "this page can't be displayed" is a friendly message that appears seems to be the default display from IE for HTTP errors greater than 400. Upon inspecting the HTTP traffic, we found many HTTP 500 errors with session not found that correlates with the user reported error timings.
A couple of questions I had are:
1. what would cause these errors apart from a session timeout?
2. what parameters in IIS or Intraweb could affect this
3. if this is caused by an application exception, can these be logged into a log file by enabling the ExceptionLogger property in the ServerController and get information such as the stack trace
4. can user sessions be logged into a log file?
Info on the Application:
1. Uses Intraweb 14.2.8
2. Running on IIS 8.5 Windows 2012 Server
3. Multiple websites accessing the same physical dll
4. This particular client has the highest number of users and furthest away from the Web Server
|
|
|
| how to set TidByets to Tbyets ? |
|
Posted by: Madammar - 01-02-2019, 08:58 PM - Forum: Indy
- Replies (1)
|
 |
i am using indy udp server component
i want to get its Adata as Tbyets how can i do that ??
To be more clear i need to compress some data using the folllowing unit
and send this data through udp and decompress it when it arrived
alaw data
Code: unit alaw;
interface
uses Classes, Sysutils;
function Encodeaudio(audio : Tbytes): TBytes;
function Decodeaudio(audio : Tbytes): TBytes;
function linearToALawSample(sample : SmallInt ): Byte;
var
cClip : Integer = 32635;
aLawCompressTable : array[0..127] of Byte = ( 1, 1, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7 );
aLawDecompressTable: array[0..255] of Smallint = ( -5504, -5248, -6016, -5760, -4480, -4224, -4992, -4736, -7552, -7296, -8064, -7808, -6528, -6272, -7040, -6784, -2752, -2624, -3008, -2880, -2240, -2112, -2496, -2368, -3776, -3648, -4032, -3904, -3264, -3136, -3520, -3392, -22016, -20992, -24064, -23040, -17920, -16896, -19968, -18944, -30208, -29184, -32256, -31232, -26112, -25088, -28160, -27136, -11008, -10496, -12032, -11520, -8960, -8448, -9984, -9472, -15104, -14592, -16128, -15616, -13056, -12544, -14080, -13568, -344, -328, -376, -360, -280, -264, -312, -296, -472, -456, -504, -488, -408, -392, -440, -424, -88, -72, -120, -104, -24, -8, -56, -40, -216, -200, -248, -232, -152, -136, -184, -168, -1376, -1312, -1504, -1440, -1120, -1056, -1248, -1184, -1888, -1824, -2016, -1952, -1632, -1568, -1760, -1696, -688, -656, -752, -720, -560, -528, -624, -592, -944, -912, -1008, -976, -816, -784, -880, -848, 5504, 5248, 6016, 5760, 4480, 4224, 4992, 4736, 7552, 7296, 8064, 7808, 6528, 6272, 7040, 6784, 2752, 2624, 3008, 2880, 2240, 2112, 2496, 2368, 3776, 3648, 4032, 3904, 3264, 3136, 3520, 3392, 22016, 20992, 24064, 23040, 17920, 16896, 19968, 18944, 30208, 29184, 32256, 31232, 26112, 25088, 28160, 27136, 11008, 10496, 12032, 11520, 8960, 8448, 9984, 9472, 15104, 14592, 16128, 15616, 13056, 12544, 14080, 13568, 344, 328, 376, 360, 280, 264, 312, 296, 472, 456, 504, 488, 408, 392, 440, 424, 88, 72, 120, 104, 24, 8, 56, 40, 216, 200, 248, 232, 152, 136, 184, 168, 1376, 1312, 1504, 1440, 1120, 1056, 1248, 1184, 1888, 1824, 2016, 1952, 1632, 1568, 1760, 1696, 688, 656, 752, 720, 560, 528, 624, 592, 944, 912, 1008, 976, 816, 784, 880, 848 );
implementation
function Encodeaudio(audio : Tbytes) : TBytes;
var
alength : Integer;
offset : Integer;
count : Integer;
sample : smallint;
byte1 : smallint;
byte2 : smallint;
encoded : TBytes;
i : integer;
begin
offset := 0;
sample := 0;
alength := Length(audio);
count := alength div 2;
SetLength(encoded, count);
for i := 0 to count -1 do
begin
byte1 := audio[offset] And $FF;
offset := offset + 1;
byte2 := audio[offset] shl 8;
offset := offset + 1;
sample := byte1 Or byte2;
encoded[i] := linearToALawSample(sample)
end;
result := encoded;
end;
function linearToALawSample(sample : SmallInt ) : Byte;
var
sign : integer;
exponent : integer;
mantissa : integer;
s : integer;
begin
sign := ((Not sample) shr 8) And $80;
If (sign <> $80) Then
begin
sample := Not sample;
end;
If ( sample > cClip ) Then
begin
sample := cClip;
end;
If ( sample >= 256 ) Then
begin
exponent := aLawCompressTable[(sample shr 8) And $7F];
mantissa := (sample shr (exponent + 3)) And $0F;
s := (exponent shl 4) Or mantissa;
end else
begin
s := (sample shl 4)
end;
s := (sign Xor $55) Xor s;
Result := s;
end;
function Decodeaudio(audio : Tbytes) : TBytes;
var
alength : integer;
offset : integer;
i : integer;
s : smallint;
decoded : TBytes;
begin
alength := Length(audio);
SetLength(decoded, alength * 2);
offset := 0;
for i := 0 to alength -1 do
begin
s := aLawDecompressTable[audio[i] And $FF];
decoded[offset] := s;
offset := offset + 1;
decoded[offset] := s shr 8;
offset := offset + 1;
end;
result := decoded;
end;
end.
Data that i try to send
Code: procedure Taudiofrm.recorderData(Sender: TObject; const Buffer: Pointer;
BufferSize: Cardinal; var FreeIt: Boolean);
var
Bytes: TIdBytes;
begin
if (Buffer <> nil) and (BufferSize > 0) And (udpreciver.Active) then
begin
udpreciver.SendBuffer(ip, port, RawToBytes(Buffer^, Buffersize));
end;
end;
data i try to receive
Code: procedure Taudiofrm.udpreciverUDPRead(AThread: TIdUDPListenerThread;
const AData: TIdBytes; ABinding: TIdSocketHandle);
var
AudioDataSize: Integer;
begin
AudioDataSize := Length(AData);
if (AudioDataSize > 10) then
begin
if BlockAlign > 1 then
Dec(AudioDataSize, AudioDataSize mod BlockAlign);
TThread.Queue(nil,
procedure
var
AudioData : Pointer;
begin
try
if not Player.Active then
begin
Player.Active := True;
Player.WaitForStart;
end;
except
end;
AudioData := AudioBuffer.BeginUpdate(AudioDataSize);
try
BytesToRaw(AData, AudioData^, AudioDataSize);
finally
AudioBuffer.EndUpdate;
end;
end);
end else
begin
TThread.Queue(nil,
procedure
begin
Player.Active := False;
Player.WaitForStop;
end
);
end;
end;
i am not actually sure how do i get the correct data using Tidbyets
|
|
|
| App Crash with IWDBGrid and bootstrap |
|
Posted by: bob9999 - 12-31-2018, 05:09 PM - Forum: IntraWeb General Discussion
- Replies (5)
|
 |
I have been butting my head against a wall for a couple of days so I thought I would post my issue here in hopes someone else has run into this. I have latest Delphi 10.2 and Intraweb 15 installed with the bootstrap components from IW. I have a number of forms in my application but the issue is the one with the interactive DB Grid. All was working fine until I added in the resource maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css and other supporting libraries. All a sudden, my grid lost its title centering and padding which I solved with custom CSS.
I am using bootstrap for a star rating plugin that I display in the grid to show the rating of a particular customer entity. I have a number of filters in combo boxes on the screen that I have click events for all a SQL Sever sproc that feeds in the value selected to then return the result set that is fed into the grid. The starting point is no data and the user has to choose at least one filter to start seeing data.
So here is the weird stuff. When the form first loads, I can select a filter and the first set of data loads perfectly. I try to select the second filter and WHAM the application crashes with access to an unknown memory location (Access violation at address 000000000040E045 in module 'OwnerBuilder.exe'. Read of address FFFFFFFFFFFFFFFF). If I try to refresh the browser I also receive the crash. So any time there is a data refresh and the DBGrid tries to render again, this is where I receive my crash.
I changed the filters to async clicks and then I go to another form with a button click that displays the details for that customer and the data is totally fine under the hood and when I return to the main form with TfMainForm.Create(WebApplication).Show, the grid is rendered fine with the latest filter change I had completed. So the issue is when the grid is attempting to render when the dataset has changed when I get the crash. So the workaround is to set the filter(s) async and then go to another form and return and all is well which of course is no good for production use and is just for testing to isolate the issue.
To add clarity, I only am using the bootstrap for the graphic star display inside the grid using a CSS class off that specific control in that 1 cell. The grid is 100% native IWDBGrid component.
If anyone has any ideas or comments I would be very appreciative.
Cheers.
bob
|
|
|
| IW17 + Bootstrap 4 |
|
Posted by: ShaneStump - 12-28-2018, 02:00 PM - Forum: IntraWeb General Discussion
- Replies (5)
|
 |
Howdy IW Team!
Sorry to keep bringing this up every few months, but the owner of my software keep asking me for our 2019/2020 roadmap!
Is bootstrap 4 or another layout manager going to be provided in IW 17 for responsive development?
I have tried to keep up with the IW 17 blog/channel, but most of the demos coming out of it don't seem to show me how I am going to keep competitive with my competitors on the web at this moment.
Happy New Year and looking forward to your response!
Shane
|
|
|
| Error reading form : "IWServerController" |
|
Posted by: raulbenitez - 12-27-2018, 12:45 PM - Forum: IntraWeb General Discussion
- Replies (8)
|
 |
I have the follow problem:
- I have RAD 10.2.3.
- I uninstall INTRAWEB.
- I Download and I Used the remove tools.
- I Download the INTRAWEB 14.
- I Install INTRAWEB 14.
I created a INTRAWEB PROJECT and made some change to test.
When i close my rad and open it again, and try to open my INTRAWEB PROJECT, i have a lots of errors.
Error reading form "IWServerController", and my form lost a properties.
- Appname.
- Descripcion.
- DisplayName.
- Port.
- Etc.
The form lost all properties for a INTRAWEB project.
- I think that is a problems for this instalation.
- I used a notebook wihout developer software.
- I install RAD 10.2.3. WHITOUT intaweb packetg.
- I install INTRAWEB 14.
And i have de same result.
I have a complete project in intraweb, if i used the RAD 10.2.3 intraweb packetg, I DON'T HAVE PROBLEMS, but my port of connection change and only use from my localhost.
If i use then INTRAWEB 14, may be i can do some changes i my project and build it, and i can use a fixed port and i can use then project from others computers of my lan.
But after any time, wihout error message of the rad, i try to compiler o build then project and the error
Error reading form : "IWServerController" began and NOT DISAPEAR.
If i uninstall ALL RAD AND INTRAWEB, and install again, i can use for a few times, but ever have the same problem.
Can help my, because i develo a completed proyect and i left to the end the problems of fixed port and access from other computers because i thinked the solution was only change the version, but with intraweb 14 i have and unstable tool.
|
|
|
| Dealing with binaries and text in TIdHTTP |
|
Posted by: thijsvandien - 12-17-2018, 05:49 PM - Forum: Indy
- Replies (6)
|
 |
For context, I'm trying to create a simple abstraction over TIdHTP. So far I have something along these lines:
Code: type
THTTPRequest = record
Method: (
hmGET
hmPOST,
hmPUT
);
URL: string;
ContentType: string;
Body: string;
end;
THTTPResponse = record
StatusCode: SmallInt;
Body: string;
end;
THTTPClient = class
public
function Perform(const ARequest: THTTPRequest): THTTPResponse; virtual; abstract;
end;
TIndyHTTPClient = class(THTTPClient)
public
function Perform(const ARequest: THTTPRequest): THTTPResponse; override;
end;
function TIndyHTTPClient.Perform(const ARequest: THTTPRequest): THTTPResponse;
var
LClient: TIdHTTP;
LRequestBodyStream: TStringStream;
begin
Result := Default(THTTPResponse);
LRequestBodyStream := TStringStream.Create(ARequest.Body);
try
LClient := TIdHTTP.Create(nil);
try
LClient.HandleRedirects := True;
LClient.HTTPOptions := LClient.HTTPOptions + [hoNoProtocolErrorException];
LClient.Request.ContentType := ARequest.ContentType;
case ARequest.Method of
hmGET:
Result.Body := LClient.Get(ARequest.URL);
hmPUT:
Result.Body := LClient.Put(ARequest.URL, LRequestBodyStream);
hmPOST:
Result.Body := LClient.Post(ARequest.URL, LRequestBodyStream);
end;
Result.StatusCode := LClient.ResponseCode;
finally
LClient.Free;
end;
finally
LRequestBodyStream.Free;
end;
end;
The issue is that not all requests and responses will be text based. I'd like to keep the interface as uniform as possible. Although filling the Body of a THTTPRequest with TBytes converted by StringOf did not result in any instantly noticeable problem, it does worry me that unwanted conversions may happen that corrupt the data. Conversely, I'm not sure if BytesOf on the Body of a THTTPResponse will give me the binary response (in case of files) exactly as it was sent. I could switch to always using TBytes for both, but then I lose all encoding/decoding intelligence that Indy has.
What is the cleanest solution (i.e. smallest number of fields/types) that will work?
|
|
|
|