-
Posts
538 -
Joined
-
Last visited
-
Days Won
83
Content Type
Profiles
Forums
Events
Posts posted by Fred Montier
-
-
Another detail: 32bits Apache almost never have some kind of problems with no need to reset. 64bits Apache almost every week had to reset due to memory leak. Still , no reason for the memory leak in 64bits since is the same code just recompile to 64bits. In IIS, just forget about. Set it up and forget that is there.
-
Any thing in Jscript should do the job. Already published an example with simple animating that work very well with image and panel inside unigui. That is the basics.
-
The isapi memory format should match the Apache version memory allocation also. But any format will work in IIS. It's theirs technology and of course, despite being a standard, MS apparently do better. Keep in mind that a lot of stuff in Apache are done by third party, like modules. That's is a strength and at the same time a weak point: lack of documentation.
As a personal experience, all 32bits ISAPI with 32bits Apache work better (in instability wise) than 64Bits architecture. But it's is a anecdotal point of mine and take with a grain of salt. Anyways, I use IIS for documentation reasons and support from 3rd parties/Friends. My time costs money and time lost find out what is wrong with a very confuse, ridicule params configuring interface, is money wasted (allow for all, deny... "fork" ! ON and OFF will do better, shorter and straight !).
No wonder that a lot of products exists just to configure Apache without direct edit of its text config file. That itself is a prof of my point.
I not such a great fan... -
This one is very simple but very well crafted CSS code. Button for you to use in games, uplifted interfaces and more out of the box.
Have fun,
- 5
-
Is working again. Turn out this was not the problem but another isapi.
-
Images. when internal, they work as resource. They will be extract to cache or temp folder and that takes time.
IN a large system (more than 50 forms, and 100 concurrent sessions), you will see the difference in performance very clearly.
You will find more and ready suppont to IIS than to Apache, for obvious reasons. The Delphi community programming to web is full of misconceptions and nut heads (as taking linux seriously at this time and age when Windows is starting to take the heat by google and amazon with theirs new OS). -
a) From the point of view of size, if it works properly in standalone, should work in ISAPI as well. The codes are exactly the same except for the “first line”
- You might have a lot of Standalones using different ports. Have tried with 20 in the same cloudserver with just 2Gb ram. But just to see how much it could hold. Not a pratical approach.b) Is there a way to increase the stack or something like this ?
- Managing your forms help but just in large projects. See Best Practices in manual.Any suggestion is welcome. I think there is very few possibilities for the optimization of the code. The size of the DLL is around 20 MB
- Using external images always. The stateful format (used in uniGUI, Intraweb) is not intended to work with thousands of concurrent conecctions. If this is your case. Other wise, performance problems is more related to DB and programmer skill, tuning and monitoring. -
My server is overloaded. I removed .
-
On 8/6/2020 at 7:19 PM, SergioFeitoza said:
Dear Ron
Thank you very much and congratulations for the high quality and didactics of the material that you included in this post. It will be very useful for me to clean up and to adjust what I have done after 3 weeks trying to deploy ISAPI + Apache.
I have two small doubts in the file httpd.conf:
a) In the # DirectoryIndex part is written
b) <IfModule dir_module>
c) DirectoryIndex index.html
d) </IfModule>
· Should I include “DirectoryIndex index.dll … before…. index.html ?
· If , instead of the directory C:/apache24/test" I had two directories (two apps) named testA and testB and including testA.dll and testB.dll , could I , instead of naming index.dll, to write something like: …. Directory testA.dll testB.dll index.dll …. ?
As finding the right post in the forum is frequently difficult, in the middle of so many posts,
I suggest to FMSOFT team to put these files and text in the first line of the page of the Manual :
http://www.unigui.com/doc/online_help/apache_2_2.htm
READ FIRST THE FILES:
C:\Apache24\INSTALL.txt
C:\Apache24\conf\httpd.conf
In this post from Ron, there is an example project, with windows binaries of Apache 2.4 from ApacheHaus, in the attached file.
1) Unzip to C:\Apache24
2) Go to \bin subdir and run httpd.
3) Open http://localhost:81/test in browser, to load test project in \test subdir.
The only modifications to the httpd.conf that I did was
1) For the mime section: AddHandler isapi-handler .dll
2) <Directory "C:/apache24/test">
Options FollowSymLinks ExecCGI
AllowOverride None
DirectoryIndex test.dll
Require all granted
</Directory>Alias /test "C:/apache24/test"
P.S: The ISAPI module was already activated in the httpd.conf. It took about ten minutes to make this example project.
Thanks again Ron, I owe you this
Making your DLL the default indexer is not such a good idea. And again, OmniSecure, despite being old, works at the same level of performance as Apache HTTPd (even better and more stable).You had some headaches trying to do that configuration with just one server, imagine doing that with dozens, mixing PHP and ISAPI, admin panels, domains and folder alias, prefix etc... etc. .
There is a lot of hype about Apache not justified nowadays. All windows professional and up versions has IIS by default. And since your probably will end up running in a cloud in a Windows Server X version, better do in IIS at once.
The Apache module to load ISAPI is a third party project not very stable. Just in version 2.2 and newer became more reliable. But I'm tired of it since I have a lot of free HTTPd available more well documented and stable.
TL;DR: I've had a lot of problems with Apache for Windows using ISAPI and never had the same problems with same ISAPI using IIS. Even thought using CGIExpert, IntraWeb, , uniGUI, Delphi ISAPI in the same computers with a lot of projects. Never saw a big project for ISAPI using Apache for windows. Except in Linux distro's. Since we´re not going to use Linux, there is no competition here just misinformation. -
any updates ?
-
Build it up, and run.
Old DCU in your projects. -
A more complete example with support to WhatsApp voice and text. Code for sale only $ 30.00 (USD) by PayPal. PVT msg to me.
Try here https://cutt.ly/SdZxE9o -
-
Yes, of course. That's why I placed the function in a button for you to pick up how to use.
I haven't found nothing in Ext.JS or in uniGUI about this subject. Buts this is a standard method using JS in the latest browser version. Not tested in Iphone Safari.
I do appreciate any feed back about it. I have just Samsung and Xiomi smatphones. -
This example demonstrates how to lock the position of the Mobile Browser so that there is no change in the rotation of the screen. Very simple in FMX but a little inaccurate in the browser and completely unreliable using CSS.
Once you set the lock in Portrait, turning the smartphone to landscape does not realign. This is very useful if you want to keep a fixed formatting in your APP (as in TikTok, but here in the browser).
You have to run to see the effect.Project available at https://unigui.express
- 2
-
FYI: Use an ApyKey if your not in a hurry and have time and JS skills. This is just a simple example !!
-
Example demonstrating how to use Google Translate without the complications of APIKey and a lot of intervention with JS.
Some controls respond easily to translation. If you want more resources, consider registering with Google how to develop and obtain an ApiKey for this resource.
Project available at https://www.uniguiexpress.com
- 2
- 1
-
And of course... it looks better using triggers. I placed in button just for clarity reasons.
-
A simple example, but a lot of work: support the use of Emoji directly in edits for chats and other programs aimed at social interactivity.
This is an example to be used with only an edit control (or dbEdit) but that does not create a problem with Ext.JS CSS. Other libraries I tested worked better but created incompatibility in the interface that I was unable to solve.
Visit http://www.unigui.com.br to purchase books, packs of projects for unigui and other resources and services.
Soon our website https://www.unigui.express (in English) will be live. Meanwhile, English channel on Telegram: https://t.me/uniguiexpress
Project available at https://www.unigui.express
- 2
- 1
-
Example for consumption of Geolocation API enabling complete data collection from a given ip.
Get you free API Key at http://ipstack.com/ (free untill 10.000/day )Project available at https://www.uniguiexpress.com
- 4
-
List of all supported Languages/Dialects at this time.
[['Afrikaans', ['af-ZA']],
['Bahasa Indonesia',['id-ID']],
['Bahasa Melayu', ['ms-MY']],
['Català', ['ca-ES']],
['Čeština', ['cs-CZ']],
['Deutsch', ['de-DE']],
['English', ['en-AU', 'Australia'],
['en-CA', 'Canada'],
['en-IN', 'India'],
['en-NZ', 'New Zealand'],
['en-ZA', 'South Africa'],
['en-GB', 'United Kingdom'],
['en-US', 'United States']],
['Español', ['es-AR', 'Argentina'],
['es-BO', 'Bolivia'],
['es-CL', 'Chile'],
['es-CO', 'Colombia'],
['es-CR', 'Costa Rica'],
['es-EC', 'Ecuador'],
['es-SV', 'El Salvador'],
['es-ES', 'España'],
['es-US', 'Estados Unidos'],
['es-GT', 'Guatemala'],
['es-HN', 'Honduras'],
['es-MX', 'México'],
['es-NI', 'Nicaragua'],
['es-PA', 'Panamá'],
['es-PY', 'Paraguay'],
['es-PE', 'Perú'],
['es-PR', 'Puerto Rico'],
['es-DO', 'República Dominicana'],
['es-UY', 'Uruguay'],
['es-VE', 'Venezuela']],
['Euskara', ['eu-ES']],
['Français', ['fr-FR']],
['Galego', ['gl-ES']],
['Hrvatski', ['hr_HR']],
['IsiZulu', ['zu-ZA']],
['Íslenska', ['is-IS']],
['Italiano', ['it-IT', 'Italia'],
['it-CH', 'Svizzera']],
['Magyar', ['hu-HU']],
['Nederlands', ['nl-NL']],
['Norsk bokmål', ['nb-NO']],
['Polski', ['pl-PL']],
['Português', ['pt-BR', 'Brasil'],
['pt-PT', 'Portugal']],
['Română', ['ro-RO']],
['Slovenčina', ['sk-SK']],
['Suomi', ['fi-FI']],
['Svenska', ['sv-SE']],
['Türkçe', ['tr-TR']],
['български', ['bg-BG']],
['Pусский', ['ru-RU']],
['Српски', ['sr-RS']],
['한국어', ['ko-KR']],
['中文', ['cmn-Hans-CN', '普通话 (中国大陆)'],
['cmn-Hans-HK', '普通话 (香港)'],
['cmn-Hant-TW', '中文 (台灣)'],
['yue-Hant-HK', '粵語 (香港)']],
['日本語', ['ja-JP']],
['Lingua latīna', ['la']]];- 1
-
Guys...
I really forgot to put the ajaxRequest at the HTML onClick event. I see that some of you may want to work like that. But, doing so, you will have to adapt all the cards and is not such good programming !
Soon will add this code but I don't think is a good point. Use the JS code to place your ajaxRequest. -
Hello people...
This is the long-awaited and sought-after example of voice recognition.
An important warning: IT ONLY WORKS ON CHROME!
It's not that I'm a fan of Google or Chrome but technology is only available in this browser.This application is also on sale with more resources and documentation and without any dependence on the HTML home page using only uniGUI resources. Contact me if you are interested via Telegram: https://t.me/fredmontier or Whatsapp + 55-11-98620-7676
However, the source code is here and you can adapt it according to your needs and goals. Totally functional !
Instruction:
1- Open your page in CHROME. Will work in any other browser.
2- Select you language and/or dialect
3- Say whatever you want to say. It will recognize your voice and convert to text. Also, shows how to import the result to uniGUI memo and ALSO how to have live feed of what is being said in uniGUI memo control.Easy-peasy, lemon squeezy !
You can use these phrases to add punctuation to your text:
Period
Comma
Exclamation point
Question mark
New line
New paragraphNotes:
Punctuation works in German, English, Spanish, French, Italian, and Russian.
In Spanish, punctuation at the beginning of the sentence, like ¡ or ¿, must be typed.- 3
-
Removed due to my space size quota.
See at https://www.uniguiexpress.com
It is just a simple example using uniURLFrame but with a nice carousel menu. Where in JavaScript says "Place your ajaxRequest..." you should provide your callback code to trigger the menu.You can change the CSS to remove de number. It is just for reference.
- 4
uniGUI DOES Send E-mail via GMail/Yahoo/Outlook
in Components and Code Samples
Posted
GMail discontinued support for third (unknown) parties app use their server to send e-mail.
I know this is quite simple for most users here but there are some novice programmers who either haven't read the uniGUI manual or are too busy trying to reach the best level of programming.
Sending email through uniGUI app is the same as VCL app. There is no difference at all. As many people ask me about this, I made a small example that allows you to send emails through GMail, Yahoo and OutLook. The security DLLs are already together and the program is made for 32 bits. If you need it for 64 bits, use the corresponding DLLs.
It is commented in such a way that you will easily be able to adapt your favorite applications and webmail into your app.
Note that GMail blocks the sending of email by its servers using other lesser known applications. Set up your GMail account to send via any app at the link:
https://myaccount.google.com/lesssecureapps?pli=1
Project available only in the pack Silver at http://unigui.express