Page 1 of 2 1 2 LastLast
Results 1 to 15 of 20

Thread: Sourcecode convterer - begrenst capaciteit

  1. #1
    Senior Member Anders's Avatar
    Join Date
    Dec 2001
    Location
    Doetinchem
    Posts
    1,415

    Sourcecode convterer - begrenst capaciteit

    Hoi allemaal

    Na het uitstekende voorbeeld hier op de site heb ik een sourcecode converter als webapplicatie gebouwd - nu alleen voor meerdere forum's en voor Html. Hiervoor heb ik de SynEdit componenten gebruikt en dit in een cgi applicatie.

    Dat werkt opzicht allemaal goed, maar als ik meer dan +/- 150 regels sourcecode instopt converteer hij niet alles. Het lijk wel als of de TStinglist of de TMemoryStream te weinig capaciteit zouden hebben. Of de Request,ContentFields.Values niet alles kan onthouden. Maar probeer ik de zelfde sourcecode te converteren hier op de site gaat het wel goed, zo het moet dus aan mijn code liggen - maar wat?

    Ik stuur de sourcecode mee
    Attached Files Attached Files
    Anders

    May your code compile!

  2. #2
    Senior Member Anders's Avatar
    Join Date
    Dec 2001
    Location
    Doetinchem
    Posts
    1,415
    Ik heb mijn code veder probeert te optimaliseren maar nu krijg ik de volgende server foutmelding als ik te "grote" stukken source code er in stopt:
    Internal Server Error 500
    Exception: EConvertError
    Message: '$' is not a valid integer value
    Weet iemand wat dat betekent?
    Anders

    May your code compile!

  3. #3
    Old Navigator Matthijs's Avatar
    Join Date
    Mar 2001
    Location
    Ede, NL. Delphi: Delphi 7/2005 :). Matthijs schrijf je Matthijs
    Posts
    2,199
    Originally posted by Anders
    Ik heb mijn code veder probeert te optimaliseren maar nu krijg ik de volgende server foutmelding als ik te "grote" stukken source code er in stopt:
    Code:
    Internal Server Error 500 
    Exception: EConvertError 
    Message: '$' is not a valid integer value
    Weet iemand wat dat betekent?
    Het betekent dus dat je '$' (zonder quotes) naar een integer probeert te converteren, en daar kan Delphi niet tegen!
    Ik denk dus dat je ergens een stuk uit een string probeert te kopieren en dat wil omzetten naar een getal. Controleer dus eens of je niet de verkeerde string of het verkeerde deel uit de string converteert.
    Het kan ook zijn dat je de waarde uit een variant toekent aan een integer en de waarde van die variant dus '$' is. En zo zijn er nog wel meer dingen waarbij je een EConvertError krijgt! Het enige dat je kunt doen is door je sources heen stappen en kijken wat de waardes van de verschillende variabelen zijn.
    What's in a sig?

    Would my posting be less valuable if it didnot have a sig? (Vrij naar William S.)

    Let op de kleine lettertjes. For all postings: e&oe!
    This program performed an illegal function, the police are on their way

  4. #4
    Senior Member Anders's Avatar
    Join Date
    Dec 2001
    Location
    Doetinchem
    Posts
    1,415
    Bedankt Matthijs

    Je spreekt over door je code heen stappen. Dat zou mij wel lukken bij een gewone applicatie, maar hoe doe je dat bij een webapplicatie?
    Anders

    May your code compile!

  5. #5
    Old Navigator Matthijs's Avatar
    Join Date
    Mar 2001
    Location
    Ede, NL. Delphi: Delphi 7/2005 :). Matthijs schrijf je Matthijs
    Posts
    2,199
    FF spieken hoe Borland dat in van zijn samples doet?
    Als ik het goed heb staat er in <$Delphi>\Source\Interner een voorbeeld van!
    What's in a sig?

    Would my posting be less valuable if it didnot have a sig? (Vrij naar William S.)

    Let op de kleine lettertjes. For all postings: e&oe!
    This program performed an illegal function, the police are on their way

  6. #6
    Senior Member Anders's Avatar
    Join Date
    Dec 2001
    Location
    Doetinchem
    Posts
    1,415
    Hoi
    Omdat ik nog steeds niet snap wat er bedoeld worden met "door de code hen stappen" heb onderstaande test WebAction gemaakt. Hier schrijf ik wat zaken van de Request weg in tekst files zodat ik op die manier kan bekijken.
    Mijn Webform heeft een Text area, een aantal Radio buttons en twee submit buttons.
    Wat blijkt nouw als ik het met klein stuk source code dan loop t alles naar verwachting. In L1 krijg ik het hele Content als een string, en kan dus vind ik ook de "Name" + "Value" van de ContentFields terug. Ook L2 en L3 geeft de te verwachten resultaaten. Prima.
    Maar stop ik meer dan +/- 150 regels source code er in dan zie bij L1 alleen de "Name" van de eerste ContentField en een stuk (+/- 4000 bytes) van de "Value". En bij L3 (Request.ExtractContentFields(L3) geeft hij de in eerdere thread gemelde Internal server error. Comment ik dan L2 uit dan komt hij wel door L3 maar nog steeds met een gedeelde van de totale Content.
    Het lijk als de Request.Content maar een beperkte hoeveel aan kaan (+/- 4000 bytes) maar dat klopt dus niet , want als ik de zelfde grote stuk code hier op de site converteert doet hij het wel.

    Wie kan helpen?

    Ps: Matthijs bedoel je niet "<$Delphi>\Demos\Internet" ?

    Code:
    procedure TWebModule1.WebModule1WebActionItemTestAction(Sender: TObject;
      Request: TWebRequest; Response: TWebResponse; var Handled: Boolean);
    var
      st: string;
      L1: TStringList;
      L2: TStringList;
      L3: TStringList;
    begin
      try
        L1 := TStringList.Create;
        L2 := TStringList.Create;
        L3 := TStringList.Create;
    
        st := Request.Content;
        L1.Add(st);
        L1.SaveToFile('L1Content.txt');
        L2.Text := Request.ContentFields.Values['code'];
        L2.SaveToFile('L2code.txt');
        Request.ExtractContentFields(L3);
        L3.SaveToFile('L3ContentFields.txt');
      finally
        L1.Free;
        L2.Free;
        L3.Free;
      end; // try
    end;
    Anders

    May your code compile!

  7. #7
    Vreemd, zou dat een beperking in je webserver kunnen zijn? Welke gebruik je?
    Marcel

  8. #8
    Ik heb net even sysutils (13.491 regels) lokaal (Apache) en op de site (IIS 5) geprobeerd, beide zonder probleem. Maar die 4000 zit me te dicht bij 4Kb om toevallig te zijn.
    Marcel

  9. #9
    Senior Member Anders's Avatar
    Join Date
    Dec 2001
    Location
    Doetinchem
    Posts
    1,415
    De server is Apache 1.3.23 onder windows.

    I stuur ook de laaste versie van de code mee

    Of kijk even hier:
    DGA Pascal-converter
    Anders

    May your code compile!

  10. #10
    Senior Member Anders's Avatar
    Join Date
    Dec 2001
    Location
    Doetinchem
    Posts
    1,415
    Ik was de attach file even vergeten - sorry
    Attached Files Attached Files
    Anders

    May your code compile!

  11. #11
    Senior Member Anders's Avatar
    Join Date
    Dec 2001
    Location
    Doetinchem
    Posts
    1,415
    Oorzaak gevonden - Bedankt Marcel. Nu nog de oplossing zoeken.

    Ik heb net mijn cgi gedraaid op de Omni server en hier pakt hij zonder problemen source code van duizenden regels. Er zit dus een beperking in de Apache server van 4 Kb voor de Request.Content.

    Weet iemand of dat te instellen is bij de Apache server?
    Anders

    May your code compile!

  12. #12
    Senior Member PsychoMark's Avatar
    Join Date
    Nov 2001
    Location
    Raamsdonksveer
    Posts
    10,269
    He, dat is typisch. Ik draai zelf ook Apache onder Windows en met data geen limieten, misschien een limitatie van de CGI implementatie? In ieder geval, ik heb geen D6, zou je een gecompilede versie kunnen maken? Dan kan ik 'm zelf ook even testen, ben wel benieuwd of dat configureerbaar is...
    Qui custodiet ipsos custodes

  13. #13
    Senior Member Anders's Avatar
    Join Date
    Dec 2001
    Location
    Doetinchem
    Posts
    1,415
    Als je het testen wil - Heel graag.
    De source code is gewoon in Delphi 5 pro gemaakt.

    [edit] Oeps - Ik maak natuurlijk ook gebruik van de SynEdit componenten, maar die heh je waarschijnlijk ook? Anders gil en ik stuur alsnog de exe.[/edit]

    Ik stuur je de bij horende Html pagina even in een PM dat test wat makelijker.
    Last edited by Anders; 16-May-02 at 11:20.
    Anders

    May your code compile!

  14. #14
    Senior Member Anders's Avatar
    Join Date
    Dec 2001
    Location
    Doetinchem
    Posts
    1,415
    Ik heb wat te zoeken op Google newsgroups en wat ik heb kunnen vinden gaat over dat de STDIN een buffer limit zou hebben van 4K of 8K en dat je dat zouden kunnen oplossen door
    You have to set the stdin file mode as binary
    Is dat nu iets in windows of is dat iets dat vanuit de Webform megestuurd moet worden in de Html header (of zo iets). Kan iemand mij hiermee verder helpen?

    Verder heb ik ook geprobeert de nieuwste Apache server te instaleren (2.0.36), maar die krijg ik niet aan de praat. Is die soms alleen voor NT en/of 2k?
    Anders

    May your code compile!

  15. #15
    Ik heb je programma hier net getest, SysUtils.pas (13.439 regels) komt er gewoon doorheen op Apache. Ik heb daarvoor niets bijzonders ingesteld in Apache, ik zou me kunnen voorstellen dat het aan je Windows ligt. Welke Windows gebruik je?
    Marcel

Page 1 of 2 1 2 LastLast

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Similar Threads

  1. sourcecode uit IE in delphi-app
    By BasicontheWeb in forum Algemeen
    Replies: 27
    Last Post: 28-May-04, 08:14

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •