-
Posts
21 -
Joined
-
Last visited
Content Type
Profiles
Forums
Events
Everything posted by naozuka
-
I'm sharing my version of recaptcha v3 with Delphi XE2, using TIdHttp. It's not converting the UTC to DateTime but it works. Recaptcha-v3_DelphiXE2
-
UniEdit ClientEvents UniEvents call procedure in custom component
naozuka replied to FabioMorcillo's topic in General
You can't put an maskedit inside a datetimepicker. Why do you need that? To put a mask? -
Here is my full configuration to work with Unigui and nginx under IIS. It's not completely how I would like to be but it's working. My unigui version is 1.0.0.1416 IIS 10 Windows Server 2019 Deploying with ISAPI mode (DLL File) Customized the uni and ext files so I copy them to my application folder. C:\webapp (folder) C:\webapp\web.config (created by IIS) C:\webapp\app (folder) C:\webapp\app\UniguiApplication.dll C:\webapp\app\files\ext (folder copied and customized from default installation) C:\webapp\app\files\uni (folder copied and customized from default installation) In ServerModule you must change ExtRoot = .\files\ext\ UniRoot = .\files\uni\ nginx.conf worker_processes 1; error_log logs/error.log warn; events { worker_connections 1024; } http { proxy_connect_timeout 1800; proxy_send_timeout 1800; proxy_read_timeout 1800; send_timeout 1800; client_max_body_size 0; server { listen 80; proxy_set_header X-Real-IP $remote_addr; proxy_set_header Host $host:$server_port; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Host $host; location /app { proxy_pass http://localhost:91; } } } In your IIS, you must add in Default Document the file to be loaded UniguiApplication.dll That's it. To test, just put your local ip /app to test. PS: What I'm trying yet to do is change proxy_pass to "http://localhost:91/;" With this slash in the end so the unigui application will look into "C:\webapp" and not in "C:\webapp\app" folder. But if you do this, the files of unigui will not be loaded.
-
Are you under IIS? I was having the same problem and found that the error was in my nginx conf. worker_processes 1; error_log logs/error.log warn; events { worker_connections 1024; } http { proxy_connect_timeout 1800; proxy_send_timeout 1800; proxy_read_timeout 1800; send_timeout 1800; client_max_body_size 0; server { listen 80; proxy_set_header X-Real-IP $remote_addr; proxy_set_header Host $host:$server_port; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Host $host; location /test { proxy_pass http://localhost:91; } } }
-
Hi farshad. Is there a problem running unigui application under IIS with a reverse proxy? I'm searching exactly how to do it.
-
This is not a best practice since: 1) Your user may not be on Internet Explorer. 2) Your user may not be with ActiveX enabled. The best practice is to get the logged user on your application and save that as a log. BUT if you really want this way you need ajaxRequest. procedure TMainForm.UniFormCreate(Sender: TObject); begin UniSession.AddJS('var WinNetwork = new ActiveXObject("WScript.Network");'); UniSession.AddJS('ajaxRequest(MainForm.UniLabel1, ''WindowsUser'',[''username=''+WinNetwork.UserName]);'); end; procedure TMainForm.UniLabel1AjaxEvent(Sender: TComponent; EventName: string; Params: TUniStrings); begin if EventName='WindowsUser' then begin UniLabel1.Caption := 'UserName: ' + Params['username'].AsString; end; end;
-
The example was not working for me. What I did. 1) Remove backslash before index.html. chartFrame.HTML.LoadFromFile(ExtractFilePath(Application.ExeName)+'\index.html'); 2) On ServerModule, move the strings below in CustomCSS to CustomFiles. /files/Chart.js /files/chartjs-plugin-zoom.min.js
-
Hi there. You must use AjaxEvent for this but keep in mind that this validation is only on clientSide. The correct is to have the validation on server side too. On ClientEvents.UniEvents (beforeInit) of Edit component: function beforeInit(sender, config) { Ext.apply(sender,{allowBlank:false,vtype:'email'}); } On ClientEvents.ExtEvents (validitychange) of Edit component: function validitychange(sender, isValid, eOpts) { ajaxRequest(sender, 'Valida', ['isValid='+isValid] ); } OnAjaxEvent of Edit component: void __fastcall TUniForm1::edtEmailAjaxEvent(TComponent *Sender, UnicodeString EventName, TUniStrings *Params) { if (EventName == "Valida") { // this is a private variable EmailValido = (Params->Values["isValid"] == "true"); } } On ClientEvents.ExtEvents (click) of Button component: function click(sender, e, eOpts) { // this will validate all components in your form sender.uform.isValid(); } OnClick of Button component: void __fastcall TUniForm1::UniButton2Click(TObject *Sender) { if (EmailValido) { ShowMessage("Validação realizada com sucesso!"); } else { ShowMessage("Erro ao validar campos obrigatórios."); } } Best regards
-
Configuration on C++ Builder only (No Delphi installed)
naozuka replied to naozuka's topic in Installation
Hi Farshad, I've found another solution using RAD Studio Command Prompt and the commands below. cd c:\Program Files (x86)\FMSoft\Framework\uniGUI\uSynEdit\Packages msbuild uSynEdit_R2012.dproj /p:Configuration=Release /p:DCC_CBuilderOutput=All msbuild uSynEdit_D2012.dproj /p:Configuration=Release /p:DCC_CBuilderOutput=All cd c:\Program Files (x86)\FMSoft\Framework\uniTools msbuild uniTools16.dproj /p:Configuration=Release /p:DCC_CBuilderOutput=All cd c:\Program Files (x86)\FMSoft\Framework\uniGUI\uIndy msbuild uIndy16.dproj /p:Configuration=Release /p:DCC_CBuilderOutput=All cd c:\Program Files (x86)\FMSoft\Framework\uniGUI\source\core msbuild uniGUI16Core.dproj /p:Configuration=Release /p:DCC_CBuilderOutput=All cd c:\Program Files (x86)\FMSoft\Framework\uniGUI\source\components msbuild uniGUI16.dproj /p:Configuration=Release /p:DCC_CBuilderOutput=All cd c:\Program Files (x86)\FMSoft\Framework\uniGUI\source\vcl msbuild uniGUI16VCL.dproj /p:Configuration=Release /p:DCC_CBuilderOutput=All cd c:\Program Files (x86)\FMSoft\Framework\uniGUI\source\design msbuild uniGUI16dcl.dproj /p:Configuration=Release /p:DCC_CBuilderOutput=All cd c:\Program Files (x86)\FMSoft\Framework\uniGUI\source\components msbuild uniGUI16Chart.dproj /p:Configuration=Release /p:DCC_CBuilderOutput=All cd c:\Program Files (x86)\FMSoft\Framework\uniGUI\source\design msbuild uniGUI16Chartdcl.dproj /p:Configuration=Release /p:DCC_CBuilderOutput=All Then I add the bpl manually with uniGUI16dcl and uniGUI16Chartdcl in Component -> Install Packages.- 6 replies
-
- builder
- c++ builder
-
(and 1 more)
Tagged with:
-
Configuration on C++ Builder only (No Delphi installed)
naozuka replied to naozuka's topic in Installation
I'll try with XE2 Trial then. So, there is no way with copying files? I thought the version file was in C:\Program Files.- 6 replies
-
- builder
- c++ builder
-
(and 1 more)
Tagged with:
-
Configuration on C++ Builder only (No Delphi installed)
naozuka replied to naozuka's topic in Installation
Hi Farshad, I tried copying folder hpp, dcp and bpl from "C:\Users\Public\Documents\RAD Studio\9.0" from my pc to the other with no delphi installation. But when I tried to install the bpl it gives me the message "Verification Failed". I don't know if I have to copy any file to "C:\Program Files (x86)\FMSoft". I'm using version 1.0.0.1416.- 6 replies
-
- builder
- c++ builder
-
(and 1 more)
Tagged with:
-
Hi there. I'm with a problem here. I bought a license on my company and installed sucessfully on Rad Studio XE2 on my machine. Then I bought more three licenses but the machines doesn't have Rad Studio. Only C++ Builder XE2 (without Delphi). Is there a way to install without Delphi or using my machine that has Rad Studio XE2 installed? Best regards, Naozuka.
- 6 replies
-
- builder
- c++ builder
-
(and 1 more)
Tagged with:
-
The best solution On Form -> ClientEvents -> ExtEvents -> Add event window.afterrender: function window.afterrender(sender, eOpts) { Ext.get(sender.id).setStyle('display', 'none'); }
-
How to do in Unigui?
-
Thank you Abaksoft. That is what I was afraid of. Maybe someone can help with some CSS to hide the form? I did one "McGyverism" but that was not elegant. On FormCreate: Self.Width := 1; Self.Height := 1; On ExtEvents: function window.afterrender(sender, eOpts) { Ext.get(sender.id).el.setStyle("padding", 0); Ext.get(sender.id).el.setStyle("border-width", 0); Ext.get(sender.id).el.setStyle("-webkit-border-radius", 0); Ext.get(sender.id).el.setStyle("-moz-border-radius", 0); Ext.get(sender.id).el.setStyle("border-radius", 0); Ext.get(sender.id).el.setStyle("height", 0); Ext.get(sender.id).el.setStyle("width", 0); }
-
Already tried that.
-
There is not datamodule only a MainForm and a FreeForm for testing.
-
I'm having a problem but I don't know if it's common on Unigui. When I call Create of a form, it's showing it but I don't want to. It's a form that have my report component (QuickReport) and it's just a container form. I already tried without any components and the same result. procedure TMainForm.UniButton1Click(Sender: TObject); var form: TUniForm; begin form := TUniForm.Create(UniApplication); // It's creating and showing the form here. end;
-
Try this: http://forums.unigui.com/index.php?/topic/7974-max-characters-in-memo/?hl=maxlength