| Welcome, Guest |
You have to register before you can post on our site.
|
| Online Users |
There are currently 744 online users. » 3 Member(s) | 737 Guest(s) Applebot, Baidu, Bing, Google, 789clubsicu, jltencom, rlebeau
|
| Latest Threads |
WebApplication.IP change ...
Forum: IntraWeb General Discussion
Last Post: MJS@mjs.us
09-11-2026, 09:49 PM
» Replies: 1
» Views: 312
|
Hook/callback to handle t...
Forum: IntraWeb General Discussion
Last Post: Lenfors
09-08-2026, 09:03 AM
» Replies: 0
» Views: 244
|
Reproducible IIS crash in...
Forum: IntraWeb General Discussion
Last Post: alex.trejo@tttnet.com.mx
09-08-2026, 01:48 AM
» Replies: 0
» Views: 266
|
The packages IW16.xx inc...
Forum: IntraWeb General Discussion
Last Post: hsbelli
09-03-2026, 11:46 AM
» Replies: 2
» Views: 575
|
Redirection issues with F...
Forum: IntraWeb General Discussion
Last Post: magosk
08-31-2026, 10:03 AM
» Replies: 0
» Views: 318
|
Source Code
Forum: IntraWeb General Discussion
Last Post: magosk
08-31-2026, 08:11 AM
» Replies: 3
» Views: 740
|
TContenthandler requires ...
Forum: IntraWeb General Discussion
Last Post: valmeras
08-30-2026, 02:35 AM
» Replies: 0
» Views: 290
|
TIWjQDBGrid erratic behav...
Forum: IntraWeb General Discussion
Last Post: alex.trejo@tttnet.com.mx
08-20-2026, 05:12 PM
» Replies: 8
» Views: 2,394
|
Change Language DataTable
Forum: IntraWeb General Discussion
Last Post: Rigoberto Mercedes
08-19-2026, 03:21 PM
» Replies: 1
» Views: 433
|
How to terminate HTTP Thr...
Forum: Indy
Last Post: rlebeau
08-14-2026, 08:01 AM
» Replies: 5
» Views: 1,097
|
|
|
| Read HTTP Header Field "Host" |
|
Posted by: RosenbergFans - 11-05-2019, 08:37 AM - Forum: IntraWeb General Discussion
- Replies (5)
|
 |
Hi,
we have an Intraweb Site (standalone application) where we would like to use TLS (HTTPS) encryption. We are planning to use two domains which will point to the same IP. The Intraweb application should react differently depending from which domain the request is coming (show different pages and use different certification files since certificates are depending on domain?)
I was told to use the HTTP Header Field "Host". How can I read this header field in Intraweb?
|
|
|
| using a url instead of 127.1.1.1:1975 |
|
Posted by: tinygoldwing - 11-05-2019, 03:47 AM - Forum: IntraWeb General Discussion
- Replies (6)
|
 |
I have a IW15 app that I've used for years and it runs as a service. My current regular webpage has a button that fowards to the apps address. All that is fine. When it starts the url in the browser is http\ourip:port if I do it internally i would type in: http:\127.1.1.1:1975. Is there a way to mask the address to something that looks like a regular url.
Is there a way I can mask the ip:port with something that looks like a real. myapp.com
I've have tried to find a way to do this but I'm not an internet person. I'm lost and I know there must be someway of doing it.
Thank You,
Ed Brazell
|
|
|
| OSC commands with numbers |
|
Posted by: davidbaxter - 11-01-2019, 03:04 PM - Forum: Indy
- Replies (3)
|
 |
Trying to use Indy to send OSC (open sound control) messages to a Behringer X32 mixer. If the message is just text, it works fine. The issue is a message of the format "/ch/01/mix/fader ,f .3". The .3 needs to be sent as 4 bytes. What needs to go out is "3E 99 99 9A". What the idudpclient sends is "3E 3F 3F 3F". The same problem exists for .4 (3E CC CC CD vs. 3E 3F 3F 3F). Once you get to .5 and greater, things work again because the second byte is smaller. e.g. .5 = 3F 00 00 00 > 3F 00 00 00, .6 = 3F 19 99 9A > 3F 19 3F 3F).
I'm using Indy 10 and Delphi Rio. Here is the sending subroutine. I've commented out several different approaches, all of which give the same result.
procedure TCPForm1.OSCSendMsg;
var
OutValueStr: String;
I: Integer;
J: Tbytes;
B1: TIdbytes;
begin
If Length(CommandStr) > 0 then begin
OscCommandStr := PadStr(CommandStr); //convert CommandStr to OSC string
If TypeStr='' then OscCommandStr := OscCommandStr+','+#0+#0+#0;
If Length(TypeStr) = 1 then begin
If TypeStr='i' then Begin // Parameter is an integer
I := swapendian(IValue); //change to big endian
OscCommandStr := OscCommandStr+','+TypeStr+#0+#0+IntToCharStr(I);
OutValueStr := IntToStr(IValue);
end;
If TypeStr='f' then Begin // Parameter is a float (real)
I := swapendian(PInteger(@FValue)^); //typecast & change to big endian
//I := htonl(PInteger(@FValue)^); //typecast & change to big endian
//J := MakeOSCFloat(FValue);
OscCommandStr := OscCommandStr+','+TypeStr+#0+#0+IntToCharStr(I);
//OscCommandStr := OscCommandStr+','+TypeStr+#0+#0+char(J[0])+char(J[1])+char(J[2])+char(J[3]);
OutValueStr := FloatToStr(FValue);
end;
end;
//IdUDPClient2.Send(OSCCommandStr,IndyTextEncoding_UTF8);
//IdUDPClient2.Send(OSCCommandStr);
B1 := toBytes(OSCCommandStr);
IdUDPClient2.SendBuffer(B1);
if loglevel>0 then logwrite('OSC= '+ hexstr(OSCCommandStr));
Wait(UDPtime);
// if loglevel>0 then logwrite('OSC '+ OSCCommandStr);
end;
end;
function TCPForm1.IntToCharStr(I : Integer) : String;
var
CharStr : String;
MyArray: array [0..3] of Byte;
J: Integer;
begin
For J :=0 to 3 do MyArray[J] := 0;
Move(I, MyArray, 4); //typeset conversion from integer to array of byte
CharStr := '';
For J :=0 to 3 do //convert array of byte to string
CharStr := CharStr+char(MyArray[J]);
IntToCharStr := CharStr;
end;
Any insight you can share would be welcome. Thank you.
..Dave
|
|
|
| IW 15.1.7 error during installation |
|
Posted by: aimpera - 10-31-2019, 04:07 PM - Forum: IntraWeb General Discussion
- Replies (7)
|
 |
Hi,
IW installer (iw15.1.7.exe) after validating license step, excepts a "download error":
Quote:Sorry, the files could not be downloaded. Click 'Retry' to try downloading the files again, or click 'Cancel' to terminate setup.
Can you check?
Best Regards, Alfredo.
Edit:
Installing *ONLY* Intraweb (no Bootstrap no FASTMM etc) works...
|
|
|
| ssl mixed content error intraweb 15.1.5 |
|
Posted by: PDSBILL - 10-31-2019, 02:44 PM - Forum: IntraWeb General Discussion
- Replies (11)
|
 |
I have a program that runs properly under delphi 10.3 using intraweb 15.0.17 as isapi dll
same program built using delphi 10.3.2 using intraweb 10.1.5 has following error
Mixed Content: The page at 'https://cdpservices.company.com/webppreviewer_DEV/' was loaded over HTTPS, but requested an insecure resource 'http://10.10.250.38/webPPReviewer_DEV/ppwebreviewer.dll/q19he8KSL-L7KEbcSSt18o6hYSq/'. This request has been blocked; the content must be served over HTTPS.
The iis server it runs on does not have ip address 10.10.250.38. I cannot find any machine that has this ip address
The first page of my app comes up, but when I attempt to go to the 2nd page is when I get the error.
I am assuming that the http://10.10.250.38 should be 'https://cdpservices.company.com' but cannot find any place to set the value.
Thank you for any help.
|
|
|
| IW 15.1.7 handlers randomic problem |
|
Posted by: cprmlao@hotmail.com - 10-30-2019, 05:14 AM - Forum: IntraWeb General Discussion
- Replies (2)
|
 |
With IW 15.1.17
I have a handler, a Form using a Html TemplateForm and a JS code used in document.ready().
I have in my app many handlers.
In the local network and with amazon EC2 I am using WIFI with my home router. I am not using internet provider from mobile.
I am having randomic "404 error" with "resource not found" when using the app with the chrome browser in my mobile and Amazon EC2 Server.
Sometimes the Handler works, other times doesn´t work. When I tried debug I see it is trowing an error of "404 - resource not found", randomically.
If I use the Chrome Desktop or my mobile with chrome connected with IW server installed in a PC in the local network, there is no problem.
If I use the Chrome Desktop connected with IW server installed in Amazon EC2 , I have no problem.
The problem only occur when using chrome browser of my cell phone and IW server in Amazon EC2.
I have noted that the problem happens when I use the crome browser of my mobile. If I use the default browser of my mobile there is no problem.
I have Android Oreo in the mobile and it is a recent Cell phone. So Chrome os updated in version 78.0.3904.62
What can be causing it?
//IW Handler
Code: function TContentAgenda.Execute(aRequest: THttpRequest; aReply: THttpReply;
const aPathname: string; aSession: TIWApplication;
aParams: TStrings): boolean;
var
jso,js:TJsonObject;
ja:TjsonArray;
begin
Result:=True;
js:=TJSonObject.Create;
ja:=TjsonArray.Create;
try
with Controller.DM.FDQQuery do begin
Close;
SQL.Clear;
SQL.Add('Select A.* from TableTeste');
.....
js.AddPair('draw',TJSONString.Create(_draw));
js.AddPair('recordsTotal',TJSONString.Create(....));
js.AddPair('recordsFiltered',TJSONString.Create(....));
js.AddPair('data',ja);
wresult:=js.toJson;
Close;
finally
js.Free;
end;
aReply.WriteString(wresult);
end;
//JS code in html Template Form
Code: <script>
$(document).ready(function () {
function listaAgenda() {
let params = {
data_inicial: moment().format('DD/MM/YYYY'),
data_final: moment().add(1, 'days').format('DD/MM/YYYY'),
med_ag: $('#IWUSU').val() || ''
};
//encodeURI
$.ajax('/GetAgenda?' + encodeURI($.param(params)))
.done(resp => {
let out = JSON.parse(resp);
let context = { qtde: out.recordsFiltered, items: out.data };
context.hasItems = (parseInt(context.qtde, 10) > 0);
let html = template_agenda_script(context);
$("#id_agenda_menu").html(html);
}).fail(erro => {
alert(JSON.stringify(erro))
})
};
listaAgenda()
})
</script>
|
|
|
| My complete steps for setting up IW SSL app, using http.sys |
|
Posted by: chiswilson - 10-29-2019, 07:24 PM - Forum: IntraWeb General Discussion
- Replies (1)
|
 |
My Steps for getting IW SSL application working (using http.sys)
I recently updated to IW 15 Ultimate, for the purposes of transitioning my app to SSL. It was actually easier than I expected. After reading many posts in the forums, especially some helpful ones from Jose Nilton Pace, as well as Daniel, I decided to go with using http.sys, instead of the usual Indy version. From what I can tell, it was a good decision, and easier.
(as an aside - I really think AtoZed should provide definitive instructions, for doing this with their software. Someone else recently asked for official AtoZed instructions for this, in the forums, and the AtoZed response was to go read threads and posts that their other *customers* had written. The end result is, to learn how to do something new, you have to go searching and reading dozens of scattered posts and tidbits here and there, some old, some new, some accurate and some not, from other customers on this forum and users around the ’net.
Would make a lot more sense if there was a central help document, written and sanctioned by AtoZed.
All that being said — Im still very appreciative of AtoZed for making all this *work*! …)
MY DETAILS:
IW version: IW15 Ultimate (I currently have v 15.1.7)
IW application type: Standalone, HTTP.SYS
Delphi IDE: Delphi 2010
Hosting server: Windows Server 2012 R2
IIS version (only used for installing certificate): IIS 8
GENERATE YOUR CSR (certificate request)
On your server, start IIS Manager. (Only use IIS for dealing with certificate; after that, you don't need it.)
Go into ‘Server Certificates’.
On the right, click ‘Create Certificate request’, and fill out the required info. For Common name, you’ll need to put the exact domain name that will be used for accessing your application. Mine was: weblogin.mydomain.com.
For Cryptographic service, use: Microsoft RSA SChannel… For bit length, use: 2048
Then specify a filename for your CSR and save it.
GET YOUR SSL CERTIFICATE
You can get certificates from many places, including a free one from LetsEncrypt. I used SSL.com and just got their most basic certificate which is about $40-$45 USD or so per year, depending on how many years you buy it for. After that, I think you just have to renew it, once per year or so.
During the purchase process, they’ll ask you to input the CSR you generated in the above step, so you can simply cut and paste the contents of the CSR.
SSL.com will also need to validate that you are in fact the owner of the domain for the certificate; there are several methods of doing this. I chose to simply have them send an email to me at admin@mydomain.com, which has a special link in it, which you use to confirm you received the email and therefore that you have control over the domain name. Somewhere in this process, you also specify which type of server you’re using, so that they can give you the appropriate type of certificate. Obviously the server type is IIS.
At the end, they will email you the certificate bundle, which contains a zip file, which contains the certificate as a .p7b file. You can also download the certificate from their site, in other formats if needed.
Upload your certificate (.p7b file) to your server.
Then go back into IIS Manager on your server, go back into Server Certificates, and on the right click ‘Complete certificate request’. Select the .p7b file that you just recently uploaded. If you use the Open dialog, it seems to be looking for a *.cer file, but I simply changed it to *.* and selected my .p7b file. Give it a friendly name, leave certificate store set to ‘personal’, and click OK. It should then add your Cert to the list.
You are now DONE with IIS, so close it out.
BIND YOUR CERTIFICATE TO YOUR PORT NUMBER
Start Powershell. I think you need it running as Administrator. You can simply start a command prompt, then type: powershell.
Type:
dir cert:\localmachine\my
It should list your certificate, and its Thumbprint.
Then run this powershell code, substituting your own thumbprint:
Code: $guid = [guid]::NewGuid()
$certHash = “89C38E9AD6455F9A8782DD29CE089074C57311ED” # <— Put in your own Thumbprint here!
"http add sslcert ipport=0.0.0.0:443 certhash=$certHash appid={$guid} certstore=my" | netsh
To be able to copy-and-paste within the powershell window (so you can copy and paste your thumbprint)… on the command prompt window menu, choose Properties / Options and enable the ‘Quick edit mode’.
Also, if you want a DIFFERENT port number than 443, then obviously change that in the above code. I used 443, as it is the default port for HTTPS.
Running that code should add your binding.
To verify, you can then type: “http show sslcert” | netsh
…and it should show your binding listing.
Also, if using a firewall, don't forget to allow traffic on port 443, or whatever port you wanna use.
THEN IN DELPHI…
In your project file, change:
IWStart —> IWStartHsys
TIWStart.execute(false) —> TIWStartHsys.execute(false) (the false means its gonna be a service; set to true for a GUI)
On your servercontroller, set:
SSLOptions -> port to 443, or whatever port you wanna use
SSLOptions -> NonSSLrequest to NsRedirect (assuming you want to force everything to HTTPS)
Thats about all I did, and it worked. There are some other settings on the serverController you can tweak if needed, but I haven’t monkeyed with those yet.
For local development and testing, where you probably don't have a certificate, you can of course use some compiler conditionals (or other means) to easily switch back and forth between local devel mode (non ssl) and server mode (ssl).
Thats all folks. Hope this helps.
|
|
|
|