Announcement

Collapse
No announcement yet.

Problem shelling to Internet Explorer

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Martin Francom
    replied
    Ok, good suggustion all. Thank you.

    Because my need was to create an easy, unclutterred way for a customer to logon to my Internet Customer customer support site. (Powered by SimpleHelp.com)

    What I decided to do was to write a special browser using FlyFire and the Webbrowser control. The program has just two buttons, one button 'Client Logon' allows the customer to login as a client by a one button click. The other button allows the Technician to logon as master (passworded).

    This make it very convenient for the customer to connect to our remote customer support.

    If anyone has need of Remote Customer support programs, that works from any OS platform, I would recomment checking this out:
    http://www.simple-help.com

    Leave a comment:


  • Cliff Nichols
    replied
    I have a need to ensure that IE is used to display this webpage when I shell to it.
    BADDDDDD idea.....Its programming like this that makes me NOT want to use a product. (God knows there are too many of them out there) and it is 1 line of code.

    Display, well that too is up to the programmer to properly code to display as they intended it, but allow the user to use what THEY want to use, and not force something down their throats.

    Leave a comment:


  • Dave Biggs
    replied
    Use SearchPath () WinAPI function for "iexplorer.exe."
    Code modified to search the registry for IE
    (Sorry about the iexplorer.exe typo before)

    Leave a comment:


  • Gösta H. Lovgren-2
    replied
    Originally posted by Michael Mattias View Post
    Use SearchPath () WinAPI function for "iexplorer.exe."
    If no results with that try "iexplore.exe." (no "r" on end.) On my machine (XP) "iexplorer.exe" found no matches but "explore.exe" found 24 in various folders (none of which I recall installing). One was in "C:\Windows\IE7\" and one in "C:\Windows\IE8\"

    Note "iexplore http://www.SwedesDock.com" works here from the Run function in XP.

    =================================
    "If you can't annoy somebody,
    there's little point in writing."

    Anonymous
    =================================
    Last edited by Gösta H. Lovgren-2; 29 Nov 2008, 12:06 PM.

    Leave a comment:


  • Michael Mattias
    replied
    Wait a minute, my bad....

    Here's the real problem....
    I have a need to ensure that IE is used to display this webpage
    Fix that and you can pack up your troubles in your old kit bag and

    Leave a comment:


  • Michael Mattias
    replied
    Just as a secondary thought... IE exposes a couple of COM interfaces when installed. There's probably a way to see if you can initialize one of those objects... if so, IE is installed.

    That might even be 'ideologically' better than looking for a file with a certain file name.

    Leave a comment:


  • Michael Mattias
    replied
    Use SearchPath () WinAPI function for "iexplorer.exe."

    If found -
    1. Hope/Pray that it is is in fact "Microsoft Internet Explorer" and that it is completely installed correctly.
    2. SHELL/ShellExecute/ShellExecuteEx/CreateProcess passing the file name to be opened

    MCM

    Leave a comment:


  • Dave Biggs
    replied
    It pays to be polite


    You should probably check first which browser is the default..
    Code:
    #DIM ALL
    #INCLUDE "WIN32API.INC"
     
    FUNCTION FindIEinReg()AS STRING
     LOCAL hKey   AS DWORD
     LOCAL zData1 AS ASCIIZ * %MAX_PATH
     LOCAL zData2 AS ASCIIZ * %MAX_PATH
     LOCAL sTest, sTest2 AS STRING
                                            'Test Registry entry for IExplore..
     IF RegOpenKeyEx(%HKEY_CLASSES_ROOT,"CLSID\{0002DF01-0000-0000-C000-000000000046}\LocalServer32", _
                     BYVAL %Null, %KEY_READ, hKey) = %ERROR_SUCCESS  THEN
     
       RegQueryValueEx hKey, "", BYVAL %Null, BYVAL %Null, BYVAL VARPTR(zData1), %MAX_PATH
       RegCloseKey hKey
       ExpandEnvironmentStrings BYVAL VARPTR(zData1), BYVAL VARPTR(zData2), %MAX_PATH
     END IF
      FUNCTION = zData2
    END FUNCTION
    '------------------/FindIEinReg
     
    FUNCTION PBMAIN()
     LOCAL sTest$, lRes&
     LOCAL szFile, szDir, szExe AS ASCIIZ * %MAX_PATH
     
      szFile = "Dummy.htm"                                  ' e.g. a test file in the app dir
      szDir  = CURDIR$
     
      lRes = FindExecutable (szFile, szDir, szExe)          ' find associated executable (browser)
      ' MsgBox " Default Browser is: "+ szExe
     
      IF lRes > 32 THEN                                     ' %SE_ERR_FNF = 2  %SE_ERR_NOASSOC = 31
        IF INSTR(LCASE$(szExe), "iexplore.exe") = 0 THEN    ' default browser NOT IE
          sTest = FindIEinReg()
          IF LEN(sTest) THEN
            lRes = MSGBOX ("IE is available but NOT the default browser, OK to run IE?", %MB_YESNO, "Warning")
            IF lRes = %IDNO THEN EXIT FUNCTION
            szExe = sTest
          ELSE
            MSGBOX "IE required but not available - Goodby" : EXIT FUNCTION
          END IF
        END IF
     
        lRes = SHELL(szExe + " " + "[URL]http://www.powerbasic.com/support/pbforums/[/URL]", %SW_SHOWNORMAL)
      END IF
     
    END FUNCTION
    '------------------/PBMain
    Last edited by Dave Biggs; 29 Nov 2008, 10:05 PM. Reason: Errors fixed & new code added to find IE thru registry

    Leave a comment:


  • Joe Byrne
    replied
    Martin,

    You can't automatically assume that IE is necessarily going to be installed anyway. Its a good bet, but its not totally impossible to remove and I know some people who do.

    What in the world do you have that requires IE? Personally, I think I'd approach this differently and try to "fix" the html page that requires non-standard code.

    If you 'define' what browser must be used, you might run into problems where people have something like IE v5 or lower installed. Those browser have some serious security threats and you could be asking for tons of trouble automatically firing up one of those browsers against the defined wishes of the owner. I can only imagine the potential legal problems from someone with some deep pockets getting hacked because your program opened up an unpatched copy of IE against the preferred browser settings.

    If you do it this way, you have more guts than I do.

    To answer your question though, 'explorer' is not the name of the Internet Explorer executable. You can use what you have, but you'll have to get the correct program name. Then again, there's no guarantee that MS will keep the name the same in future versions of Windows either
    Last edited by Joe Byrne; 28 Nov 2008, 05:42 PM.

    Leave a comment:


  • Rodney Hicks
    replied
    Making the assumption that this program is going to be run by someone else on their machine, like you sold me a copy of this program, I would expect that if my default browser is anything but Explorer, that it would use my default browser, and my default language, default resolution, etc. That is why default user settings can be set.

    Leave a comment:


  • Martin Francom
    started a topic Problem shelling to Internet Explorer

    Problem shelling to Internet Explorer

    I have a program that shells to a browser and launches a web site. The code I am using is:

    Rcode& = Shell ("explorer " + "http:my.website")


    It works but it uses the default browser. So, if Internet Explorer is not the default browser then IE is not used to display the web page.

    I have a need to ensure that IE is used to display this webpage when I shell to it.

    Is there a way to rewrite the command above so that it will always use IE when shelling to my webpage?
Working...
X