Avatar billede silverwolf Nybegynder
25. marts 2000 - 12:51 Der er 7 kommentarer og
2 løsninger

Hvordan starter jeg en IE fra et program :)

Hejsa

JEg er løbet ind i det problem at jeg vil lave et program der starter IE ( Internet Explore ) også at den måske går ind på Besked.dk... Jeg kan bare ikke huske hvordan man gør.. Og vis man nu skal have den til at gå til en anden addresse i sammen vindue. Og ikke starte et nyt. Hvad kan man så gøre :)

Mvh Tusse
Avatar billede mikker Nybegynder
25. marts 2000 - 15:51 #1
Der er garanteret en extremt nem måde at gøre det på, men kan ikke lige nu få det til at virke med Shell-kommandoen ihvertfald.
Jeg ville nok bygge en explorer ind i mit program istedet for. det er efter min mening meget nemmere at manipulere med. :-)
Men held og lykke til dig
Avatar billede brian Nybegynder
25. marts 2000 - 17:29 #2
Følgende kode skal indsættes i et modul :
Option Explicit

Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hWnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long

Public Const SW_HIDE = 0
Public Const SW_MAXIMIZE = 3
Public Const SW_MINIMIZE = 6
Public Const SW_NORMAL = 1
Public Const SW_SHOWDEFAULT = 10
Public Const SW_SHOWMAXIMIZED = 3
Public Const SW_SHOWMINIMIZED = 2
Public Const SW_SHOWMINNOACTIVE = 7
Public Const SW_SHOWNA = 8
Public Const SW_SHOWNOACTIVATE = 4
Public Const SW_SHOWNORMAL = 1

Public Const ERROR_BAD_FORMAT = 11&
Public Const ERROR_FILE_NOT_FOUND = 2&
Public Const ERROR_PATH_NOT_FOUND = 3&
Public Const SE_ERR_ACCESSDENIED = 5
Public Const SE_ERR_ASSOCINCOMPLETE = 27
Public Const SE_ERR_DDEBUSY = 30
Public Const SE_ERR_DDEFAIL = 29
Public Const SE_ERR_DDETIMEOUT = 28
Public Const SE_ERR_FNF = 2
Public Const SE_ERR_NOASSOC = 31
Public Const SE_ERR_OOM = 8
Public Const SE_ERR_PNF = 3
Public Const SE_ERR_SHARE = 26

Public Sub FileExecutor(lhWnd As Long, Path As String, Action As String, Optional cParms As Variant, Optional nShowCmd As Variant)

Dim lRtn As Long 'declare the needed variables

lRtn = ShellExecute(lhWnd, Action, Path, 0&, Path, SW_NORMAL) 'execute or print the file or folder
   
If lRtn <= 32 Then 'if an error is found then call the FileError function
  FileError (lRtn)
End If

End Sub


Public Sub FileError(lRtn As Long)
 
Dim Msg As String
   
Select Case lRtn 'if any errors occur then display them to the user
      Case 0
      Msg = "Memory Error"
      Case ERROR_BAD_FORMAT
      Msg = "Bad Executeable Format"
      Case ERROR_FILE_NOT_FOUND
      Msg = "File not found"
      Case ERROR_PATH_NOT_FOUND
      Msg = "Path not found"
      Case SE_ERR_ACCESSDENIED
      Msg = "Access Denied"
      Case SE_ERR_ASSOCINCOMPLETE
      Msg = "Association incomplete"
      Case SE_ERR_DDEBUSY
      Msg = "DDE Busy error"
      Case SE_ERR_DDEFAIL
      Msg = "DDE failed"
      Case SE_ERR_DDETIMEOUT
      Msg = "DEE time out"
      Case SE_ERR_FNF
      Msg = "File not found"
      Case SE_ERR_NOASSOC
      Msg = "No association for this file"
      Case SE_ERR_OOM
      Msg = "Out of Memory"
      Case SE_ERR_PNF
      Msg = "Path could not be found"
      Case SE_ERR_SHARE
      Msg = "Sharing violation"
      Case Else
      Msg = "Unknown Error!, Please try again..."
End Select
   
MsgBox Msg, vbCritical
   
End Sub

Tilføje en tekstboks og en commandbutton på din form.

Private Sub Command1_Click()
Dim Action as String
Action="Open"
FileExecutor Me.hWnd, Text1.Text, Action
End Sub


Skriv din URL i tekstboksen og tryk på commandbutton så åbner IE. Næste gang du skriver en URL og trykker på command, åbnes den nye URL i samme IE.

Håber du kan bruge det.
Avatar billede silverwolf Nybegynder
26. marts 2000 - 16:25 #3
Jeg siger MEGA TAK til Brian.. Og smider de 30 poing i hoved på ham :) vis han lige laver et svar. Så jeg kan sende opoingende til ham :)))
Avatar billede brian Nybegynder
26. marts 2000 - 21:22 #4
Håber du kunne bruge det.

Brian
Avatar billede henrikudsen Nybegynder
27. marts 2000 - 02:46 #5
NEJ NEJ NEJ !!! Shame on U guys!!! :) - hvorfor alt det besvær for at åbne en Explorer?!?!? Sæt en Reference til Microsoft Internet Controls (Project/References) Skriv så følgende kode bag eksempelvis en Commandbutton:

Dim IE As New InternetExplorer
Set IE = New InternetExplorer
   
IE.Visible = True

Tre liniers kode og du har en internet explorer liggende i baggrunden !!!
Avatar billede henrikudsen Nybegynder
27. marts 2000 - 02:53 #6
Oups, der skal c'følig ikke oprettes en ny instans af IE to gange, ikke at det ikke virker, men det her er mer' korrekt ;)

Dim IE As InternetExplorer
Set IE = New InternetExplorer

IE.Visible = True
Avatar billede silverwolf Nybegynder
27. marts 2000 - 17:36 #7
Tak for hjælpen :)
Jeg prøvede lige dit Eksempel Henrik.. Jeg oplevede lidt stabilitet fejl når jeg sage den skulle skifte browser 10 gange i min.. så gik det ned.. :) Men det gjorde det ik med Brians :) Det virker upåklageligt og godt!: )

Mange Tak :)
Avatar billede henrikudsen Nybegynder
27. marts 2000 - 18:10 #8
Jamen du bruger jo bare Navigate metoden på din IE reference ... eks.: IE.Navigate "Http://www.jubii.dk" - den kan du så lade styre af en timer som således fyre en ny "Navigate" af på et givent interval ... jeg har selv brugt denne metode tonsvis af gange og den virker upåklageligt ;)
Avatar billede joern Nybegynder
30. marts 2000 - 13:10 #9
Hej Silverwolf.

Jeg har tidligere stillet og fået besvaret et spørgsmål i denne retning, det kan ses på http://www.eksperten.dk/spm.asp?id=1481

M.v.h.  Jørn
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester