Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    delphi 6 - usare ole object

    ciao a tutti,

    ho un problemino da risolvere:

    voglio utilizzare un ole container per gestire gli allegati che l'utente, attraverso una dialog, seleziona e, in fase di salvataggio del record, copia il file sorgente verso una path di destinazione costante.

    Richiamare l'allegato mi riesce, ma la proprietà dell'oggetto ole "SourceDoc" non visualizza la path del documento sorgente selezionato e resta vuota.

    Inoltre, quando richiamo un PDF, nessun problema, lui mi fa vedere l'iconcina del documente richiamato; ma quando richiamo un documento word, lui me lo apre dentro l'ole container, quindi l'iconcina se ne va a benedire......

    Ci sono dei bug su questo oggetto che forse non conosco?oppure (cosa molto più probabile) utilizzo nel modo sbagliato il componente TOleContainer e quindi mi da tutti questi problemi??

    Se qualcuno lo avesse già utilizzato con esito positivo, gradirei un esempiuccio se fosse possibile....-

    Grazie mille

  2. #2
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,333
    Non ho mai avuto l'occasione di usare il TOleContainer ma, a prima vista, credo che non sia il controllo che faccia al caso tuo, o meglio dovresti avere una lista di questi controlli, poichè ciascuno di essi interagisce con un server OLE alla volta.

    Forse non mi è ben chiaro cosa vuoi ottenere precisamente...qualcosa di simile alla finestra che mostra le proprietà di un Contatto di Oulook nella quale è possibile inserire qualsiasi tipo di elemento?

    Comunque, secondo me ti stai addentrando in una problematica che ti darà senz'altro del filo da torcere...ne vale la pena?
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  3. #3

    ora mi spiego meglio....

    ciao,


    allora, hai presente quando in Outlook inserisci un allegato in una nuova mail che invii?

    Ecco, io credo che quell'oggetto che ti fa vedere, aprire, modificare,eliminare il file allegato sia un ole container.
    Questo oggetto così ad occhio credo lavori in base al registro del s.o. e da lì preveli le informazioni sull'estensione dei file associati alle applicazioni che servono ad aprirli).

    Però non funziona un granché bene, o almeno a me non funziona così bene.
    Io credevo che fosse una cosa molto più semplice ed intuitiva da arrivarci, anche perchè se vedi le istruzioni e le proprietà che ti mette a disposizione sembravano chiare

    Ma, mi sa che agirò in altro modo se non ci riesco, ma adesso non mi voglio arrendere.

    Grazie ancora
    Ciao

  4. #4
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,333

    Re: ora mi spiego meglio....

    Originariamente inviato da mnkt
    allora, hai presente quando in Outlook inserisci un allegato in una nuova mail che invii?
    Sì, ho capito di quale finestra stai parlando.

    Originariamente inviato da mnkt
    Ecco, io credo che quell'oggetto che ti fa vedere, aprire, modificare,eliminare il file allegato sia un ole container.
    Non è detto che ogni controllo visuale presente in un programma abbia un proprio corrispondente in Delphi, peraltro con le stesse funzionalità.
    E' possibile che il "contenitore" che vedi in Outlook sia una finestra ricavata con non poche chiamate a funzioni API, anche complesse, per ottenere funzionalità simili.

    Originariamente inviato da mnkt
    Questo oggetto così ad occhio credo lavori in base al registro del s.o. e da lì preveli le informazioni sull'estensione dei file associati alle applicazioni che servono ad aprirli).
    Questo è il modo di funzionamento di un server OLE opportunamente registrato, ma direi che il TOleContainer contiene un solo oggetto OLE mentre Outlook ne riesce a contenere di più.
    Come ti dicevo prima, non è detto che vi sia una corrispondenza tra i due tipi di controlli.

    Originariamente inviato da mnkt
    Però non funziona un granché bene, o almeno a me non funziona così bene.
    Il contenitore ospita un solo oggetto di cui visualizza l'icona o, a richiesta, il contenuto caricando l'interfaccia del server OLE, se disponibile, nell'applicazione modificando anche i menu.

    Originariamente inviato da mnkt
    Io credevo che fosse una cosa molto più semplice ed intuitiva da arrivarci, anche perchè se vedi le istruzioni e le proprietà che ti mette a disposizione sembravano chiare
    I server OLE non sono mai stati chiarissimi, senza contare le difficoltà che ci sono nel gestire applicazioni che interagiscono con questo tipo di oggetti, influenzate tutte dai vari problemi di "versioning" che nascono (se il server OLE viene alterato, la tua applicazione può ricevere errori poichè non riesce ad agganciare un certo metodo o proprietà).

    Originariamente inviato da mnkt
    Ma, mi sa che agirò in altro modo se non ci riesco, ma adesso non mi voglio arrendere.
    Corretto.

    Secondo me, è meglio se dedichi un po' di tempo a qualche lettura estesa sull'argomento, senza andare troppo a tentativi, poichè potresti maleinterpretare alcuni nomi di metodi o proprietà o scrivere codice parzialmente funzionante e concettualmente sbagliato.

    Vedi se questo articolo può esserti d'aiuto.

    Ciao!
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  5. #5

    grazie mille!!!!


Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.