2

I have a script that works perfectly when hosted on a server and visited in a browser. The script contains PHP, html, javascript and jsoup.jar components. I have Java on the machine and the script works perfectly, as said, when visited in a browser, provided the website URL is added to Java's exceptions.

I, however, wish to compile the script into a standalone Windows desktop application with PHP Desktop (https://github.com/cztomczak/phpdesktop) but have immediately hit some bugs/errors.

The first is an ActiveX error as follows:

enter image description here

After clicking 'OK', and trying to run the script, I then get an error from the MSIE browser object that is compiled with PHP Desktop: "Line: 22 Error: Object doesn't support property or method 'schedule_call'; URL: http://127.0.0.1:49240/parse.js"

And that is it. The script then redirects to an error page without running.

I have tried changing the security settings in the default installation of Internet Explorer on the computer, but I don't think this has any effect on the standalone browser in PHP Desktop.

Any idea what the problem could be?

The debug output from PHP Desktop itself is as follows:

  • 03:29:50.063 INFO: Started application
  • 03:29:50.063 INFO: Logging to: C:\Users\homecomp\Desktop\MyApp\phpdesktop-msie-1.14-php-5.4.33\debug.log
  • 03:29:50.063 INFO: Log level = DEBUG4
  • 03:29:50.063 INFO: Starting Mongoose 3.9c web server
  • 03:29:50.063 INFO: WWW directory: C:\Users\homecomp\Desktop\MyApp\phpdesktop-msie-1.14-php-5.4.33\www
  • 03:29:50.063 INFO: Index files: index.html,index.php
  • 03:29:50.063 INFO: CGI interpreter: C:\Users\homecomp\Desktop\MyApp\phpdesktop-msie-1.14-php-5.4.33\php\php-cgi.exe
  • 03:29:50.063 INFO: CGI pattern: **.php$
  • 03:29:50.063 INFO: CGI environment variables set: TMP=C:\Users\homecomp\AppData\Local\Temp\,TEMP=C:\Users\homecomp\AppData\Local\Temp\,TMPDIR=C:\Users\homecomp\AppData\Local\Temp\,SERVER_NAME=127.0.0.1,PHPDESKTOP_VERSION=1.14
  • 03:29:50.063 INFO: Web server url: http://127.0.0.1:49240/
  • 03:29:50.063 INFO: IE version from registry: 9.11.14393.0
  • 03:29:50.079 DEBUG: FEATURE_XMLHTTP succeeded: 1
  • 03:29:50.079 DEBUG: FEATURE_WINDOW_RESTRICTIONS succeeded: 1
  • 03:29:50.079 DEBUG: FEATURE_WEBOC_POPUPMANAGEMENT succeeded: 1
  • 03:29:50.079 DEBUG: FEATURE_RESTRICT_ACTIVEXINSTALL succeeded: 1
  • 03:29:50.079 DEBUG: FEATURE_RESTRICT_FILEDOWNLOAD succeeded: 1
  • 03:29:50.079 DEBUG: FEATURE_DISABLE_NAVIGATION_SOUNDS succeeded: 1
  • 03:29:50.079 DEBUG: FEATURE_FORCE_ADDR_AND_STATUS succeeded: 1
  • 03:29:50.079 DEBUG: FEATURE_BEHAVIORS succeeded: 1
  • 03:29:50.079 DEBUG: FEATURE_UNC_SAVEDFILECHECK succeeded: 1
  • 03:29:50.079 DEBUG: FEATURE_BLOCK_INPUT_PROMPTS succeeded: 1
  • 03:29:50.079 DEBUG: FEATURE_TABBED_BROWSING succeeded: 1
  • 03:29:50.094 DEBUG: FEATURE_ADDON_MANAGEMENT succeeded: 1
  • 03:29:50.094 DEBUG: GetBrowserWindow(): not found, hwnd = 132934
  • 03:29:50.094 DEBUG: WindowProc(): event WM_GETMINMAXINFO: could not fetch BrowserWindow
  • 03:29:50.094 DEBUG: BrowserWindow(): parentHandle = 0
  • 03:29:50.110 DEBUG: OleClientSite::QueryInterface(): IServiceProvider
  • 03:29:50.110 DEBUG: OleClientSite::QueryInterface(): IOleInPlaceSite
  • 03:29:50.110 DEBUG: OleClientSite::QueryInterface(): IDispatch
  • 03:29:50.125 DEBUG: GetBrowserWindow(): not found, hwnd = 132934
  • 03:29:50.125 DEBUG: WindowProc(): event WM_SETFOCUS: could not fetch BrowserWindow
  • 03:29:50.125 DEBUG: OleClientSite::QueryInterface(): IUnknown
  • 03:29:50.125 DEBUG: OleClientSite::QueryInterface(): DWebBrowserEvents2
  • 03:29:50.125 DEBUG: OleClientSite::QueryInterface(): IDocHostUIHandler
  • 03:29:50.125 DEBUG: OleClientSite::QueryInterface(): IDocHostShowUI
  • 03:29:50.172 DEBUG: StoreBrowserWindow(): hwnd = 132934
  • 03:29:50.188 INFO: GET 200 /
  • 03:29:50.188 DEBUG: DISPID_AMBIENT_DLCONTROL
  • 03:29:50.188 DEBUG: DocHostUiHandler::GetOptionKeyPath(): registry path: Software\PHP Desktop\MSIE
  • 03:29:50.219 INFO: GET 200 /style.css
  • 03:29:50.235 INFO: GET 200 /parse.js
  • 03:29:51.422 INFO: GET 404 /csshover.htc
  • 03:29:51.454 INFO: GET 404 /csshover.htc
  • 03:29:51.454 INFO: GET 404 /images/headerbg.jpg
  • 03:37:51.344 INFO: POST 404 /search.php
  • 03:37:51.344 DEBUG: BrowserEvents2::NavigateError()
  • 03:37:51.344 WARNING: BrowserWindow::DisplayErrorPage() failed: file not found: C:\Users\homecomp\Desktop\MyApp\phpdesktop-msie-1.14-php-5.4.33\www_error-page.html
Stephan
  • 41,764
  • 65
  • 238
  • 329
VAnton
  • 167
  • 1
  • 12

1 Answers1

0

The ActiveX error shouldn't appear, as there are supposed to be no restrictions on running scripts. However phpdesktop MSIE was tested on Win XP up to Win 7 and you seem to be running Win 10. Looks like Microsoft introduced some new settings that need to be set to get rid of the new restrictions for embedded IE browser.

Regarding the js error that occurs later, to get rid of it you can try embedding a newer version of IE by setting some registry keys.

Czarek Tomczak
  • 20,079
  • 5
  • 49
  • 56