"World's smallest Browser" and Windows XP

Just starting out? Need help? Post your questions and find answers here.
normeus
Enthusiast
Enthusiast
Posts: 470
Joined: Fri Apr 20, 2012 8:09 pm
Contact:

Re: "World's smallest Browser" and Windows XP

Post by normeus »

Back to the "HTTPS" problem on windows XP:

The website you are trying to connect uses a wild card certificate. ( something like this *.familysearch.org ).

windows XP encryption cannot handle that type of certificate so it fails. maybe before they had a certificate for "das.familysearch.org"
or the library that the PBCompiler uses ignored the error before and now it does the "right thing" and fails.

when using import "libcurl.lib" it loads windows version of curl.
crypt32.dll is the problem and there is no way to get a new one. ( dont even try it )

a different version of libcurl.dll might help but for now quick fix would be to change program for XP to use WGET


Norm.
google Translate;Makes my jokes fall flat- Fait mes blagues tombent à plat- Machte meine Witze verpuffen- Eh cumpari ci vo sunari
User avatar
Lord
Addict
Addict
Posts: 900
Joined: Tue May 26, 2009 2:11 pm

Re: "World's smallest Browser" and Windows XP

Post by Lord »

Hi IdeasVacuum!
IdeasVacuum wrote:...
So, it is possible that the Dependency Walker installer updates one or two OS files, hence the system now essentially gives more information about faults on x86. Not necessarily a bad thing, but if you are still concerned, does uninstalling Dependency Walker return your system status quo?
...
I don't remember, when I downloaded Dependency Walker, but it was some time before the problems showed up.
There is no uninstall routine. It works out of the box, no install necessery. I checked what version I've got: it is version 2.2. The depends.exe, depends.dll and depends .chm are dated 29.10.2006. Filesizes are the same as on a recent download version today.
IdeasVacuum wrote:...
Curiosity: What happens if you run the temp exe (PureBasic_Compilation0.exe) produced by method 1, independent of the PB IDE?
...
There is no system error message, but no result from ReceiveHTTPMemeory(), like working with PB(x64).
IdeasVacuum wrote:...
As I understand it, your customers that use WinXPx86 get the failure, but not the system error message, so that too points to Dependency Walker making a small OS update.
...
But where can these changes be? I tried a system roll back to previous restore points. But that didn't help.
A scan with "Everything" doesn't find any kind of "api-ms-win-core-libraryloader-l1-2*" only
"api-ms-win-core-libraryloader-l1-1*".
IdeasVacuum wrote:...
It is also possible that running a VM is not 100% the same as using a 'native' WinXP x86 PC......
That's true.
But besides the system error message now, ReceiveHTTPMemeory() behaves with PB(x86) the same on Win7 and WinXP.
Image
User avatar
Lord
Addict
Addict
Posts: 900
Joined: Tue May 26, 2009 2:11 pm

Re: "World's smallest Browser" and Windows XP

Post by Lord »

Hi normeus!
normeus wrote:...
The website you are trying to connect uses a wild card certificate. ( something like this *.familysearch.org ).

windows XP encryption cannot handle that type of certificate so it fails. maybe before they had a certificate for "das.familysearch.org"
or the library that the PBCompiler uses ignored the error before and now it does the "right thing" and fails.

when using import "libcurl.lib" it loads windows version of curl.
crypt32.dll is the problem and there is no way to get a new one. ( dont even try it )
...
That sounds reasonable to me.
normeus wrote:...
a different version of libcurl.dll might help but for now quick fix would be to change program for XP to use WGET
...
Thanks for these recommendations. I think I will give up WinXP support, as I want to stick to native PB commands.
Image
IdeasVacuum
Always Here
Always Here
Posts: 6426
Joined: Fri Oct 23, 2009 2:33 am
Location: Wales, UK
Contact:

Re: "World's smallest Browser" and Windows XP

Post by IdeasVacuum »

Hi Lord

I suggest you continue WinXP customer support, giving them a maintenance end-date for later this year, sighting the fact that the OS is now too old and does not support modern-day computing.

You can make a separate version of your app, specifically for those WinXP customers, by invoking WGET as normeus advised - the code change is not going to take much time to do. The benefit is a group of happy customers who will later buy your Win7+ version of the app and recommend you to others.
IdeasVacuum
If it sounds simple, you have not grasped the complexity.
User avatar
Lord
Addict
Addict
Posts: 900
Joined: Tue May 26, 2009 2:11 pm

Re: "World's smallest Browser" and Windows XP

Post by Lord »

Hi IdeasVacuum!

Thank you for your advice.

I think, I have to set the record straight.
I don't sell software. All my programs are freeware and I should have used the term "users" instead of "customers". It's just a hobby. My programs are some kind of "niche products" covering the field of genealogy with just some hundred user.

But first I have to get rid of this damn system error message. I'll keep you informed if I succeed.
Image
normeus
Enthusiast
Enthusiast
Posts: 470
Joined: Fri Apr 20, 2012 8:09 pm
Contact:

Re: "World's smallest Browser" and Windows XP

Post by normeus »

Back to your system error:

When you run a program it loads dll's that it needs from the system unless you have a dll with the same name in the same folder of the file.
My guess is that you donwloaded WGET and the required dlls to a temp folder which is the same you are saving your programs into.

if you move those dlls to a different folder or save your programs to a different folder it should work.
also delete temp files ( ccleaner comes to mind ) or check your %appdata% folder for temporary files.

A system restore will not fix this since no system files were changed.
google Translate;Makes my jokes fall flat- Fait mes blagues tombent à plat- Machte meine Witze verpuffen- Eh cumpari ci vo sunari
User avatar
Lord
Addict
Addict
Posts: 900
Joined: Tue May 26, 2009 2:11 pm

Re: "World's smallest Browser" and Windows XP

Post by Lord »

@all:

Call me dummy, lamer, noob, ... whatever you want. :mrgreen:

@normeus:
That's it!
"ncrypt.dll" is the reason for the "mysterious" system error message.
I had this DLL (and others) in the source folder.
After testing my program on WinXP with Dependency Walker I copied some DLL which showed up on the list as "not found" to my source folder:
"libeay32.dll", "libiconv2.dll", "libintl3.dll", "libssl32.dll", "ncrypt.dll" and "wer.dll".
I wanted to check, what are the differences from these to some DLL grabbed from inet.
At this point I had "a call from real life :wink: " and returned later.
I had forgotten the DLL and started again the test for ReceiveHTTPMemory() ...
... and the horror started.
If I could, I would bite in my a.. :evil:

After your hint, I deleted one after another of the DLL from source folder and tested ReceiveHTTPMemeory() again.
When "ncrypt.dll" was deleted, the system error message was gone. I tested it by restoring the DLL from recycle bin.

So, at last, thank you to all of you, trying to help me und bringing it to a good end. :D
Lesson learned: I AM A DUMMY!
Image
IdeasVacuum
Always Here
Always Here
Posts: 6426
Joined: Fri Oct 23, 2009 2:33 am
Location: Wales, UK
Contact:

Re: "World's smallest Browser" and Windows XP

Post by IdeasVacuum »

I think all credit goes to normeus.

As for being a dummy, all I can say is welcome to the dummies club, I'm a founding member! It is very difficult to quality assure your own work at the best of times. This week I have been updating an app I wrote long ago (in C). The amount of stupid code I have found along the way is horrifying!
IdeasVacuum
If it sounds simple, you have not grasped the complexity.
normeus
Enthusiast
Enthusiast
Posts: 470
Joined: Fri Apr 20, 2012 8:09 pm
Contact:

Re: "World's smallest Browser" and Windows XP

Post by normeus »

@Lord, because of your question now I have a windows XP system with all the latest updates ( SLOW!!! but it is running).

We discovered that PB will work with HTTPS in XP as long as the certificate is for a fully qualified domain. ( no wild card )

I also installed PB 3.1 , PB 5.4 & PB 5.6 on the XP system which proved to me that it is easy to have multiple versions of PB.
( I was really afraid of installing multiple PB versions on my system)

I think we all benefit from any question in the forum.

Norm.
google Translate;Makes my jokes fall flat- Fait mes blagues tombent à plat- Machte meine Witze verpuffen- Eh cumpari ci vo sunari
IdeasVacuum
Always Here
Always Here
Posts: 6426
Joined: Fri Oct 23, 2009 2:33 am
Location: Wales, UK
Contact:

Re: "World's smallest Browser" and Windows XP

Post by IdeasVacuum »

Windows only, there is a Registry tweak that enhances the performance of the web gadget. I found it somewhere on this forum but I do not know whose code it is :oops:

At the top of your code (Globals):

Code: Select all

;===== Registry: temp setting to optimise web gadget: insert =========================================================================================
Global     sglpValueName.s = GetFilePart(ProgramFilename())
Global          lglpData.l = 11001
Global lglpdwDisposition.l
Global       igphkResult.i

If RegCreateKeyEx_(#HKEY_CURRENT_USER, "SOFTWARE\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BROWSER_EMULATION", 0, #Null, #REG_OPTION_VOLATILE, #KEY_ALL_ACCESS, #Null, @igphkResult, @lglpdwDisposition) = #ERROR_SUCCESS
    RegSetValueEx_(igphkResult, sglpValueName, 0, #REG_DWORD, @lglpData, SizeOf(LONG))
      RegCloseKey_(igphkResult)
EndIf
Just before the code closes down the app:

Code: Select all

;===== Registry: temp setting to optimise web gadget: remove ===============================
If RegOpenKeyEx_(#HKEY_CURRENT_USER, "SOFTWARE\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BROWSER_EMULATION", 0, #KEY_SET_VALUE, @igphkResult) = #ERROR_SUCCESS

       RegDeleteValue_(igphkResult, sglpValueName)
          RegCloseKey_(igphkResult)
EndIf
IdeasVacuum
If it sounds simple, you have not grasped the complexity.
User avatar
Lord
Addict
Addict
Posts: 900
Joined: Tue May 26, 2009 2:11 pm

Re: "World's smallest Browser" and Windows XP

Post by Lord »

Hi @all!
IdeasVacuum wrote:I think all credit goes to normeus.

As for being a dummy, all I can say is welcome to the dummies club, I'm a founding member! It is very difficult to quality assure your own work at the best of times. This week I have been updating an app I wrote long ago (in C). The amount of stupid code I have found along the way is horrifying!
Thank you for inviting me to the Dummies Club. I think, I'm highly qualified to be a member. :wink: :D
The mentioned registry tweak doesn't cure the problem. At least I didn't see any positiv result. But remember: I'm a dummy!

normeus wrote:@Lord, because of your question now I have a windows XP system with all the latest updates ( SLOW!!! but it is running).

We discovered that PB will work with HTTPS in XP as long as the certificate is for a fully qualified domain. ( no wild card )

I also installed PB 3.1 , PB 5.4 & PB 5.6 on the XP system which proved to me that it is easy to have multiple versions of PB.
( I was really afraid of installing multiple PB versions on my system)

I think we all benefit from any question in the forum.

Norm.
I did one reply from a user refering to a service pack 4 for XP. He wrote me, that my program does work with that SP4 on an english WinXP but not on a czech WinXP.
I found out, that this SP4 is an inofficial update to XP and not supported by Microsoft. So I'm not going to test this out. I will recommend to switch to Win7.

In regards to using multiple versions of PB: starting with PB4.51 I've got all versions (X86 and x64, including some betas) installed on my actual machine. I'm calling them with the /PORATBLE switch. Each version has it's own source folder, temp executables are created in source folder. No problem at all with this.
On WinXP(SP3) in VMware I've installed PB5.50(x86) and PB5.43(x86).
But remember: that is a dummy configuration. :D
Image
IdeasVacuum
Always Here
Always Here
Posts: 6426
Joined: Fri Oct 23, 2009 2:33 am
Location: Wales, UK
Contact:

Re: "World's smallest Browser" and Windows XP

Post by IdeasVacuum »

...the registry tweak should stop the web page 'erasing' itself when the WebGadget() is scrolled. WinXP/Win7.
IdeasVacuum
If it sounds simple, you have not grasped the complexity.
Post Reply