Newsgroup: it.comp.lang.visual-basic
Titolo: Apertura di un programma.

Io vorrei aprire un programma esterno
tipo p.e. Word, o Exel. oppure
direttamento un documento del programma tipo  documento.doc, o
documento.xls.
come posso fare, con Vb6?
Grazie Alberto


Newsgroups: it.comp.lang.visual-basic
Subject: Re: aprire un documento
Date: Thu, 4 Jan 2001 20:36:14 +0100
[...]
Option Explicit
Private Enum myShowCmd
  SW_HIDE
  SW_SHOWNORMAL
  SW_SHOWMINIMIZED
  SW_SHOWMAXIMIZED
  SW_SHOWNOACTIVATE
  SW_SHOW
  SW_MINIMIZE
  SW_SHOWMINNOACTIVE
  SW_SHOWNA
  SW_RESTORE
End Enum
' HINSTANCE ShellExecute(
'   HWND    hWnd,         // handle to parent window
'   LPCTSTR lpOperation,  // pointer to string that specifies
'                         //    operation to perform
'   LPCTSTR lpFile,       // pointer to filename or folder
'                         //    name string
'   LPCTSTR lpParameters, // pointer to string that specifies
'                         //    executable-file parameters
'   LPCTSTR lpDirectory,  // pointer to string that specifies
'                         //  default directory
'   INT     nShowCmd      // whether file is shown when opened
' );
Private 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 myShowCmd _
  ) As Long
Private Sub Command1_Click( _
)
On Error GoTo Command1_Click_Err
  Const c_wdAppPathName As String _
    = "c:\programmi\microsoft office\office\winword.exe"
  Const c_wdClass       As String _
    = "Word.Application"
  Const c_wdExeName     As String _
    = "WinWord"
  Dim strPathName As String
  Screen.MousePointer = vbHourglass
  Command1.Enabled = False
  DoEvents
  strPathName = Text1.Text
  If Len(strPathName) Then
    strPathName _
      = strPathName _
      & IIf(Right$(strPathName, 1) = "\", "", "\") _
      & Text2.Text
  Else
    strPathName = Text2.Text
  End If
  ' *1*
  '
  If Len(strPathName) Then
    strPathName _
      = c_wdAppPathName & Chr$(32) _
      & Chr$(34) & strPathName & Chr$(34)
  Else
    strPathName _
      = c_wdAppPathName
  End If
  Shell strPathName, vbNormalFocus
  ' *2*
  '
  'If Len(strPathName) Then
  '  ShellExecute _
  '      hWnd _
  '    , "open" _
  '    , strPathName _
  '    , vbNullString _
  '    , vbNullString _
  '    , SW_SHOWNORMAL
  '
  'Else
  '  ShellExecute _
  '      hWnd _
  '    , vbNullString _
  '    , c_wdExeName _
  '    , vbNullString _
  '    , vbNullString _
  '    , SW_SHOWNORMAL
  '
  'End If
  ' *3*
  '
  'If Len(strPathName) Then
  '  strPathName _
  '    = "start" & Chr$(32) _
  '    & Chr$(34) & strPathName & Chr$(34)
  '
  'Else
  '  strPathName _
  '    = "start" & Chr$(32) _
  '    & c_wdExeName
  '
  'End If
  'Shell strPathName, vbHide
  ' *4*
  '
  'If Len(strPathName) Then
  '  GetObject(strPathName).Application.Visible = True
  '
  'Else
  '  CreateObject(c_wdClass).Visible = True
  '
  'End If
  Command1.Enabled = True
  Screen.MousePointer = vbDefault
  Exit Sub
Command1_Click_Err:
  Beep
End Sub
Private Sub Form_Load( _
)
  Label1.Caption = "&Percorso:"
  Label2.Caption = "&Documento:"
  Text1.Text = ""
  Text2.Text = ""
End Sub
--
Ciao.
Maurizio
--------
?SPQR(C)
 X
--------


Sei sicuro fosse l'opzione piu' facile? %)
Un Dim Cippa as Object
poi
set cippa as new(excel) --o quello che e'--
cippa.documents.adddocument(pathcompleto)
non era piu' veloce?
Salvo i 36 errori, intendo...
Saluti.
-- 
      Gianni "bugbarbeq" Rondinini, 25, RA, 242, 152
  VBR - Vero Birro Romagnolo®, diffidate dalle imitazioni!
 Opel/ECC Calibrezio EVO-IV --- Kawasaki "Gas Gas" ZZ-R 1100
 ICQ# 36893168 - IRCNet: bugbarbeq, @ on #linux-it & #NetBSD

 Salvo i 36 errori, intendo...
Scusami ma non so che dirti perche' non capisco a cosa ti riferisci...


Scusami ma non so che dirti perche' non capisco a cosa ti riferisci...
Scusa, sono stato molto nebuloso:
Dim XLApp
 
Set XLApp = GetObject("", "Excel.Application")
    With XLApp
        XLApp.Visible = True
        .Workbooks.Add
e mi sembra ci sia un metodo Open per aprire un file ben preciso.


 e mi sembra ci sia un metodo Open per aprire un file ben preciso.
Ah!... Ho capito. Non hai letto il mio post, ci hai dato solo una guardata.
;-)))


;-)))
Assolutamente vero: ho visto che dichiaravi e usavi 3*10^22 API calls
e mi sono direttamente fatto un beverone di caffe' in vena :)
Poi non connettevo piu' bene e non ho terminato di leggere il tuo post
=)
Saluti che le API in VB mi spaventano...
