mii-community/UsenetArchiveIT-conversations huggingface dataset:
Newsgroup: it.comp.lang.visual-basic
Titolo: Il mio primo programma in visual basic

Ragazzi sono un programmatore che utilizzava esclusivamente il Clipper come
linguaggio di programmazione in quanto sviluppo programmi gestionali . Mi
sono trovato costretto a dover passare ad un  linguaggio sotto windows ed ho
optato per il visual basic .
Il problema nasce con la gestione dei database che è totalmente diversa .
Il progetto che dovrei sviluppare è molto semplice dovrei realizzare un form
in cui selezionare mediante delle caselle a discesa i vari componenti
utilizzati per l'assemblaggio di un pc allo scopo di relizzare un preventivo
.
Ho realizzato il form con le varie caselle a discesa (Mainboard , Processore
, Ram etc .) adesso lo dovrei collegare ad un database Access in cui vi sono
i seguenti campi : Codice , Categoria , Descrizione ,
Prezzo1,Prezzo2,Prezzo3,Prezzo4 .
Il tutto dovrebbe funzionare così in base al listino scelto in fondo al form
ed ai vari componenti scelti nelle caselle a discesa devo stampare il
preventivo , ho pensato ad un report .
Come faccio a stabilire che in una casella a discesa devono comparire solo
le descrizioni di una specifica categoria , ad esempio nella casella
mainboard tutti record con categoria mainboard .
Secondo voi è necessario un secondo database con le descrizioni delle
categorie per evitare che per un errore di digitazione un prodotto resti
fuori dalla sua categoria di appartenenza .
Grazie in anticipo a chi mi aiuterà .
Ciao

fuori dalla
sua categoria di appartenenza .
in Clipper ogni file DBF è inteso come
DataBase a se stante, in Access un file DataBase è un unico contenitore di
tabelle, che sono gli equivalenti dei singoli DBF. In pratica, se converti
i dbf del clipper in mdb, tutti i files saranno trasformati in tabelle in
un unico mdb.
L'accesso alle tabelle, anche se possibile, non avviene
attraverso gli indici ma usando istruzioni SQL, ed è quello che ti serve
sapere per poter 'filtrare' i dati  Elementi<->categorie
Fondamentalmente ci sono 2 modi per gestire i dati con VB
- usando i
controlli ADO, che costituiscono un'interfaccia VB<->DB semplice per
iniziare
- Aprendo e gestendo le varie tabelle/records via codice
Tanto per capire, usando il 1° metodo, puoi associare la casella a discesa
(ComboBox in VB) alla tabella, filtrarla con un'istruzione SQL, e da sola
ti viene riempita con i dati risultanti. Nel secondo caso, devi provvedere
alla lettura manuale dei records/campi e caricare ogni elemento.
In
altre parole, focalizza l'attenzione sul controllo ADO e sulle istruzioni
SQL
Fabio
www.sourcecode4free.com/cgt
--------------------------------
Inviato via 
http://usenet.iol.it
Newsgroup: it.comp.lang.visual-basic
Titolo: [User Control] Impossibile Scatenare 6 Eventi

Salve a tutta sono nuovo del gruppo... 
Non mi pare quasi vero... Ma non riesco a scatenare + di 5 eventi in
uno User Control!
Ho realizzato un Controllo contenete una ComboBox, 2 label, un
immagine, e infine un pulsante dopo aver scritto tutto il codice per
la personalizzazione del controllo ho dovuto gestire gli eventi cosě
mi sono ritrovato di fronte al problema di cui sopra:
Event Change()
Event KeyPress(KeyAscii As Integer)
Event Validate(Cancel As Boolean)
Event Mismatch(NewEntry As String, Reposition As Integer)
Event NotInList(NewEntry As String, Retry As Integer)
Questi eventi riesco a gestirli tranquillamente ma se ne provo ad
aggiungere un altro...
Public Event Ciao()
Vb6 Mi saluta! ;P
Configurazione Locale: 
Windows XP Professional con SP2
Visual Basic 6 con SP6
Aiutatemi por favor! A qualcuno di voi č mai successo?
Patrizio Cuscito aka Kirtaph
Key Soft Programmer
www.lepaginedelsud.com
Clicca subito e incrementa gli accessi al tuo sito

 Vb6 Mi saluta! ;P
curiosità...
se elimini uno degli eventi precedenti, e lasci l'evento "ciao", il tutto
torna a funzionare?
cioè: il problema, a quanto puoi vedere, è dovuto solo al numero degli
eventi?
-- 
Salutoni
Sergio
per rispondere... togli il group dall'indirizzo

Ti saluta che vuol dire ... che ti GPeffa?
Se č cosě, secondo me hai problemi con la tua installazione.
Ho uno usercontrol con almeno una 15ina di eventi e funziona
ancora dal 2001
Ciao
Andrea

Newsgroup: it.comp.lang.visual-basic
Titolo: Risoluzione

Sto tentando di aggirare il problema che ho postato ieri.....
C'è la possibilità di cambiare la risoluzione della scheda video ?
Linee di codice da inserire nel Form Load che controllino la risoluzione
attuale, la modifichino se necessario, e riportino la risoluzione originale
all'uscita del programma??

C'è la possibilità di cambiare la risoluzione della scheda video ?
Ad esempio con le DirectX o tramite ChangeDisplaySettings, ma ...
l' utente cosa ne pensa?
A me personalmente girerebbero i c0gl10n1 se qualcuno mi modificasse 
la risoluzione in modo del tutto arbitrario (magari forzando su valori non 
supportati dalla mia scheda).
Piuttosto rivedi il design delle tue finestre, mettendoti bene nei panni di 
chi dovra' usarle.
-- 
ciao, hal
Newsgroup: it.comp.lang.visual-basic
Titolo: SetParent e API

Salve a tutti, ho un paio di domande:
Uso l'API SetParent per rendere figlia una form, e tutto funziona.
Quando chiudo il programma però ( la form principale ) , questo rimane
in esecuzione ( nel senso che nel task manager di win c'è il programma
) . Sapete perchè?
Il codice è più o meno questo ( inserito nella form padre ):
LocalWindowUpdate GetDesktopWindow
SetParent frm, me
LocalWindowUpdate false
Il programma parte con la Sub Main.
Un'altra cosa: a cosa servono le chiamate alla funzione
LocalWindowUpdate? Il codice l'ho preso dall'API Guide, non l'ho
scritto io.
ciao e grazie
Giacomo

 ) . Sapete perchè?
Premessa: non uso le api per rendere figlia una form, per cui potrei essere
completamente fuori strada...
Prova a scaricare esplicitamente la form figlia nell'evento di caricamento
della form padre (se le form figlie sono più di una devi scaricarle tutte,
of course) e guarda se la tua applicazione si chiude.
Salutoni
Sergio

 Prova a scaricare esplicitamente la form figlia nell'evento di
Scaricamento
Ci scusiamo per il disturbo eventualmente arrecatovi....
Salutoni
Newsgroup: it.comp.lang.visual-basic
Titolo: ¿Parametro dalla riga di comando?

Come posso fare a passare il "%1" del DOS all'exe di Visual Basic, per
eseguirlo sotto forma di
programma.exe par1 par2 ...
ed avere i parametri par1 par2 ... durante l'esecuzione?
In altre parole sto cercando l'equivalente del ParamStr del Pascal, o del
main( Parametro....... ) per quanto riguarda il C.
Grazie.
Federico

 Federico
Prego
Hi,Ciao
Ettore             By -MES-

Newsgroup: it.comp.lang.visual-basic
Titolo: Conversione di data

Salve io ho bisogno di convertire la stringa esadecimale attraverso
visual basic in una data so già che :
42 E6 40 AE 00 8A 65 EE 15 EA  corrisponde al 15/07/2005 alle ore
02:04:41 am
vorrei sapere in che codifica è e come faccio dato una stringa di quel
tipo a sapere la corrispondente data ora minuti secondi ?
Grazie
Antonio

 vorrei sapere in che codifica è 
da quale sistema la ricevi?
-- 
ciao, hal

In pratica il programma di gestione degli sms della panasonic salva
ogni singolo sms in un file binario il cui nome è una stringa che
rappresenta la data    in quel formato . E' un software per windows.

42 E6 40 AE 00 8A 65 EE 15 EA  corrisponde al 15/07/2005 alle ore
02:04:41 am
42 E6 40 AF 00 8A 69 0F 20 25 corrisponde al 26/07/2005 alle ore
04:35:01 pm
42 E6 40 AD 00 8A 61 EC 06 91 corrisponde a 16/07/2005 alle ore
01:57:40 am


Potrebbe indicare il tempo trascorso, in secondi, a partire da una certa
data...
William.

miche...@tiscali.it
 wrote:

Potrebbe, visto che stiamo parlando di SMS, essere stata utilizzata una 
codifica a 7bit
http://www.dreamfabric.com/sms/hello.html
Ciao
-- 
Gianluca Cannalire
Microsoft MVP/MCP - Visual Basic
http://www.visual-basic.it
http://community.visual-basic.it/gianluca

 rappresenta la data    in quel formato . E' un software per windows.
Come fai a sapere che il nome rappresenta la data se non sai come ricavarla?
Tra l'altro mi pare un po' bizzarra la codifica in 10 byte.
Ciao

Nel software della panasonic per gli sms viene visualizzata data e ora
degli sms , gli sms sono memorizzati uno per uno in singoli file dove
è presente soltanto il corpo dell'sms , mentre la data e l'ora non è
presente da nessuna parte.
Vedendo i nomi dei file ho pensato che abbiano codificato data e ora in
esadecimale e salvato la stringa come nome del file dell'sms
corrispondente  visto che
il nome del file è 42E640AE008A65EE15EA.sm

 ha scritto nel messaggio 
news:1122987668.9...@o13g2000cwo.googlegroups.com...

Ciao,
non so usare VB
però sono esperto in Quick Basic
dovresti crearti un programmino che te lo converta.
una volta l'ho fatto ma funzionava al contrario: dal
numero trovavo il corrispondente in esadecimale.
devi suddividere la stringa in varie stringhe composte da 2 caratteri,
analizzarle una a una e trasformarle ognuna in un carattere ASCII
e ricomporre la stringa.
Newsgroup: it.comp.lang.visual-basic
Titolo: VB5 e OFFICE 2000 domanda

Salve,c'č qualcuno che puň darmi qualche chiarimento sul seguente
problema:quando connettevo un  mio programma ad un database access 97 (con
estensione mdb) con visual basic 5 (usando dao) scrivevo il seguente codice:
Dim db As Database
Dim rs As Recordset
Set db = OpenDatabase("c:\windows\desktop\archivio.mdb")
Set rs = db.OpenRecordset("dati", dbOpenDynaset)
e potevo visualizzare sul mio programma tutti i dati delle query che
m'interessavano ed effettuare i calcoli che volevo.
Ora dovrei connettere sempre ad un programma fatto in VB5 un database access
2000, il codice per connettere il database č differente? Se sě, potrei
vedere qualche esempio?
Grazie a chi puň aiutarmi.
--
Posted from 
mail.arcanet.it
 [151.99.191.3] 
via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 Grazie a chi può aiutarmi.


 Grazie a chi puň aiutarmi.


 ha scritto nel messaggio
news:000701bff59a$e508ef80$139fdfc3@vampire...


 wrote in message
8ljp6p$7uu$1...@fe1.cs.interbusiness.it...

Newsgroup: it.comp.lang.visual-basic
Titolo: [VB.NET] Aiutino

Ciao a tutti, 
Sto cercando di migrare verso .NET,ma mi trovo unpo spiazzato con alcune
cose, per esempio:
Dove cavolo devo inserire il controllo isnumeric facendo un programma in
console?? dove lo metto lo metto mi restituisce errore. Con VB6 non ho
problemi.
Grazie a tutti quelli che risponderanno
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 in console?? dove lo metto lo metto mi restituisce errore
e dov'è che lo metti?
Salutoni
Sergio

Grazie a tutti quelli che risponderanno
Lo inserisci 
Imports Microsoft.VisualBasic
In cima alla tua classe ?

 Grazie a tutti quelli che risponderanno
che ci provano
Ciao
Alessandro
--
Morfeus®
Free Joint
:PII

 Sergio


 sempre lo stesso errore, appena cancello isnumeric funziona tutto.
Credo che, pur avendo a disposizione pochissime informazioni, massi69 abbia
centrato il problema...
Stai sviluppando utilizzando l'ide o compilando da riga di comando?
Salutoni
Sergio

 Sergio


Utilizza Double.TryParse e intercetta l'eventuale eccezione
HTH
-- 
Corrado Cavalli [Microsoft .NET MVP]
UGIdotNET - 
http://www.ugidotnet.org

 stesso errore, appena cancello isnumeric funziona tutto.
Non sono sicuro di aver capito... la versione "vecchio stile" funziona
tranquillamente:
Shared Sub Main()
    'giusto per bellezza, anche usando direttamente IsNumeric(Console....)
    'funziona senza problemi.
    Dim s As String
    Console.WriteLine("Inserisci un numero:")
    s = Console.ReadLine
    If IsNumeric(s) Then
        Console.WriteLine("OK")
    Else
        Console.WriteLine("Formato non numerico")
    End If
End Sub
Una versione "nuovo stile", indipendente dalle assembly specifiche per VB,
puo' essere:
Shared Sub Main()
    Dim s As String
    Console.WriteLine("Inserisci un numero:")
    s = Console.ReadLine
    Try
        Int32.Parse(s)
        Console.WriteLine("OK")
    Catch e As FormatException
        Console.WriteLine("Formato non numerico")
    End Try
End Sub
Ciao
-- 
Luca Dormio - 
luca....@tin.it
________________________________
"Marty, non stai ragionando in maniera quadridimensionale"
Dr. Emmett L. Brown

 Utilizza Double.TryParse e intercetta l'eventuale eccezione
Giusto... con TryParse oltretutto non e' nemmeno necessario intercettare
l'eccezione (come con Parse) perche' ritorna gia' un boolean

Newsgroup: it.comp.lang.visual-basic
Titolo: Intercettare la connessione ad Internet...

Buongiorno a tutti.
Ho un idea che mi frulla in testa da qualche tempo, ma che non ho idea
di come realizzare (a dir la verita', non so nemmeno SE e'
realizzabile...).
Nel mio ufficio, accediamo ad Internet tramite un router posto sulla
rete TCP/IP, e che quindi ha un suo indirizzo IP.
L'unico "inconveniente" dato da questa struttura, e' che non c'e'
nessun controllo sulla connessione, che spesso parte anche
all'insaputa dell'utente (aprendo un documento HTML salvato sull'HD,
per esempio...)
Quello che vorrei realizzare e' un micro-programma che, installato su
tutti i computer, intercetti le richieste verso l'IP del router,
controlli se la connessione e' gia' attiva e, in caso negativo, mostri
un avviso per l'utente (del genere "La connessione non e' attiva. Vuoi
connetterti?").
Purtroppo le mie conoscenze in materia sono molto scarse... ho trovato
qualcosa sul Sito Comune, ma non ho ancora avuto tempo di studiarmelo.
Se mi dite che gia' quello risolve i miei problemi, mi metto al
lavoro.
Altrimenti, non disdegnerei qualche dritta su come poter implementare
questo piccolo sistema di monitoraggio.
Grazie per l'attenzione.
Saluti,
Marco Gentili
EmmeCiQuadro Snc
m.ge...@emmeciquadro.it

Presumo che si connetta utilizzando Accesso Remoto.
Se sì, allora sul Sito Comune c'è la risposta.
Se no, una curiosità; come fa?
Ciao,
Moreno
Ciao,
Moreno
#sirri#@
morenosoft.com
(togliete "#" dall'indirizzo)
Moreno Sirri VB Site - 
http://www.morenosoft.com/MSVBSite/
Home Page - 
http://www.geocities.com/SiliconValley/Bridge/1414/
---------------------------------------------------------------------------
Le risposte alle tue domande le trovi sul Sito Comune di questo NewsGroup:
 
http://www.murialdo.it/it_lang_vb
---------------------------------------------------------------------------

...


Connessione attraverso proxy.
Bingo! :-)


Newsgroup: it.comp.lang.visual-basic
Titolo: Esempi di pregrammi che creano file pdf

Qualcuno sa indicarmi dove trovare esempi di programmi che creano file pdf
in vb possibilmente
Saluti da
Luca Ranuzzini
-- 
Posted from [213.26.185.226] 
via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 ha scritto nel messaggio
news:91A6AA381A41D41185E20006295706320FA20B@SAS5000_1...


In che senso


Newsgroup: it.comp.lang.visual-basic
Titolo: Buoni libri su VB6

Vorrei imparare in fretta Visual Basic 6.0 .
Chi mi può suggerire qualche buon libro ?
Grazie
GOFFREDOCIT

 Grazie
Sul sito comune ci sono le recensioni.
Ciao
--
Timothy Redaelli
timothy(dot)redaelli(at)email(dot)it
-----------------------------------
Links:
Sito Comune: 
www.it-lang-vb.net
MSDN: 
msdn.microsoft.com
Room: #computer @ 
irc.azzurra.net
Newsgroup: it.comp.lang.visual-basic
Titolo: somma incrementale

Ciao a tutti,
scusate ma sono andato in tilt su una cosa banale.
Devo fare una operazione molto semplice, un bottone che ogni volta che
viene premuto incrementa di 1(per esempio) la cifra contenuta in una
una etichetta.
Grazie mille
JLW
####################
jlwmai...@ticino.com
Togliere le XX per rispondere
####################

una etichetta.
... forse...
supponendo che l'etichhetta si chiami "label1", in risposta all'evento
click del command scrivi:
label1.caption=cint(label1.caption)+1
Esercizio: visto che obbiettivamente il problema č piuttosto semplice,
ora che hai la soluzione, premi F1 e cerca di scoprire come la soluzione
poteva esser trovata... questo ti aiuterā a cavartela da solo di fronte
a problemi ben pių complessi...
Ciao,
Moreno
#sirri#@#
morenosoft.com#
(togliete "#" dall'indirizzo)
Moreno Sirri VB Site - 
http://www.msvbsite.net
---------------------------------------------------------------------------
Le risposte alle tue domande le trovi sul Sito Comune di questo NewsGroup:
 
http://www.it-lang-vb.net
---------------------------------------------------------------------------

    label1.caption=label1.caption+1
anche senza convertire in tipi etc etc
                                            danilo
Newsgroup: it.comp.lang.visual-basic
Titolo: newbie: problemi con vba query passaggio parametri

Ho costruito una maschera costituita da diversi campi di inserimento,
tra i quali ho CAMPO1, CAMPO2 e CAMPO3. Inserendo i valori di questi tre
campi, devo eseguire una query su una tabella non associata alla
maschera in modo che mi restituisca il record corrispondente.
L'unico problema è che le possibili combinazioni sono 8 in quanto ogni
singolo campo potrebbe avere un valore noto oppure nullo. Avevo pensato
di eseguire una stringa sql a mo' di query con vba sfruttando il CASE
per i vari casi, una cosa di questo tipo:
CAMPO1=valore CAMPO2=valore CAMPO3=valore   stringasql1
CAMPO1=valore CAMPO2=valore CAMPO3=nullo    stringasql2
CAMPO1=valore CAMPO2=nullo  CAMPO3=valore   stringasql3
CAMPO1=valore CAMPO2=nullo  CAMPO3=nullo    stringasql4
CAMPO1=nullo  CAMPO2=valore CAMPO3=valore   stringasql5
CAMPO1=nullo  CAMPO2=valore CAMPO3=nullo    stringasql6
CAMPO1=nullo  CAMPO2=nullo  CAMPO3=valore   stringasql7
CAMPO1=nullo  CAMPO2=nullo  CAMPO3=nullo    stringasql8
Dopodichè dovrei passare questo record trovato ad un'altra query, ma
questo posso farlo tutto tramite vba.
Il problema è quando devo fare il passaggio da vba a visualizzazione
report, come faccio? potreste darmi una linea guida veloce?
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 CAMPO1=valore CAMPO2=valore CAMPO3=nullo    stringasql2
Suggerisco anche se non ho capito bene cosa vuoi ottenere:
Potresti in due modi:
1) "SELECT AnagClienti.ragioneSociale, AnagClienti.citta, AnagClienti.email
FROM AnagClienti
WHERE (((AnagClienti.ragioneSociale) Like "*'&  txt1  & "'*") AND
((AnagClienti.citta) Like "*'" & txt2 "'*") AND ((AnagClienti.email) Like
"*'" & txt3 "'*"));"
Ho costruito la query con Access e ho sostituito alle lettere il txt.
2) utilizzando la colection delle caselle di testo utilizzare solo quelle
che non hanno valore nullo e costruirti l'istruzione SQL.
giuseppeD
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 report, come faccio?
Qui, invece, non riesco ad immaginare cosa intendi.
--
Ciao.
Maurizio
--------
?SPQR(C)
 X
--------
Newsgroup: it.comp.lang.visual-basic
Titolo: visual studio .net

ciao a tutti!
qualcuno sa dove si può trovare una versione dimostrativa di visual studio
.net?
sono curioso di provarlo :)
grazie!

 ha scritto nel messaggio
news:18xz8.34150$8D3.9...@news1.tin.it...

Puoi ordinare il Trial di 60 giorni su
http://msdn.microsoft.com/vstudio/productinfo/trial.asp
Ciao!
--
Esteban
Hosted by 
www.seber.it
(Remove nonspammare for reply)

 ha scritto nel messaggio
news:7Vyz8.35552$W9.8...@twister2.libero.it...


mi sa che è gigantesco.....io dal sito MSDN ho scaricato la versione ita che
non mi è ancora arrivata per posta, e sono qualcosa come 1,3GByte di
dati.......
forse è meglio so te lo fai spedire........
oppure vai in qualche libreria Feltrinelli-Mondadori che a quanto pare
regalano la demo a chi acquista libri Mondadori. Anzi, a volte ti danno
addirittura la versione completa: ne parlavamo un paio di giorni fa.......
good day!!!!
--
Damiani Liborio Igor
idam...@hotmail.com
 - 
igor.d...@light.it
http://www.igordamiani.it
ICQ : 11847262

Newsgroup: it.comp.lang.visual-basic
Titolo: sito comune

Mi date l'url del sito comune del NG, evito cosě di fare domande di cui 
posso trovare risposte all'interno del sito
Grassie
:)))

 posso trovare risposte all'interno del sito
http://it-lang-vb.net/
:-))))
Bye, G.
Newsgroup: it.comp.lang.visual-basic
Titolo: help for euro

I try to be more clear :
Withnesseth :
the new money -Euro- always have the decimal, thus always we have to write =
1,05 - 10,55 - 10,00 ecc. ecc.
the old money  -Lira- don't have decimal , thus we have to write = 110 ,
115, 112 ecc. ecc.
What I search ?
if in the cells of a sheet the is is 1,05 - thus a euro money i want that
the macro start is :
Dim eurolire As Currency
Dim totale As Currency
Dim DataObj As DataObject
Const e As Currency = 1936.27
Sub Calc_EURO_IN_LIRE()
   Const Titolofinestra = "Valore in Lire "
      totale = Application.WorksheetFunction.Sum(Selection)
      eurolire = e * totale
        Msgbox Format(eurolire, "#,###,###"), , Titolofinestra
        Set DataObj = New DataObject
     DataObj.SetText Format(eurolire, " #,###,###")
    DataObj.PutInClipboard
           End Sub
if in the cells of a sheet the is is 105 - thus a Lira money i want that the
macro start is :
Dim totale As Currency
Dim lire As Currency
Dim DataObj As DataObject
Const e As Currency = 1936.27
Sub Calc_Lire_IN_Euro()
   Const Titolofinestra = "Valore in Euro "
   totale = Application.WorksheetFunction.Sum(Selection)
     lire = (totale / 1936.27)
      Msgbox Format(lire, " #,###,##0.00"), , Titolofinestra
      Set DataObj = New DataObject
     DataObj.SetText Format(lire, " #,###,##0.00")
    DataObj.PutInClipboard
End Sub
Can I put this 2 code in one code ? thus to have only one buttun on the tool
bar ?
many thanks!!!

 Withnesseth :
Toglimi una curiosità, per favore. Visto che posti da Napoli, non
potevi scrivere in italiano ? O ti sei limitato a mandare lo stesso
messaggio degli altri NG ?
Comunque, potresti fare una semplice
If Instr(ContenutoDellaCella, ",") > 0 Then
...routine appropriata
Else
...l'altra routine
End If
Bye, G.

grazie!!!!
si ho postato su newsgroup americani ......
la fretta è una bruta cosa....
ma xchè ti sembra inglese quello che ho potato :))))

Newsgroup: it.comp.lang.visual-basic
Titolo: Editor per HELP

Qualcuno sa dove posso trovare un editor per file HELP di WINDOWS (mi serve
per creare HELP) possibilmente freeware e in italiano?
Grazie mille a tutti e auguri di una felicissima giornata
Dm

Prova a guardare l'editor di chm della microsoft.
Ciao Andrea

> Prova a guardare l'editor di chm della microsoft.
...che hai nel CD di VB!

 ha scritto nel messaggio
news:a4daa1$h4$1...@serv1.iunet.it...

Newsgroup: it.comp.lang.visual-basic
Titolo: [?] Refresh Database

Ciao a tutti.
Sto lavorando ad una applicazione che, installata su
piu' PC in rete locale, condividono il medesimo
database, Jet con DAO 3.6.
Se effettuo una modifica nei dati da una applicazione
e ne verifico i risultati con lo stesso programma che
l'ha effettuata, o con Access 2000 vedo correttamente
i nuovi dati, mentre dalla stessa applicazione lanciata
su un altro PC continuo a vedere i dati vecchi.  Posso
ovviare introducendo prima della lettura una chiusura
e successiva riapertura del DB. (Il programma apre
il Database all'inizio e lo chiude al termine).
Purtroppo pero' ho notato una esagerata lentezza
nell'apertura del Database se questo e' gia' aperto
dall'altra applicazione, e non e' praticabile.
Esiste un modo pulito (e veloce) per ovviare a questo
inconveniente?   C'e' da tener presente qualcos'altro
nell'aprire il DB per dichiararne l'accesso simultaneo
e far si che risulti piu' veloce ?
Grazie mille
Beppe

 su un altro PC continuo a vedere i dati vecchi.
Se rileggi i dati con un recordset diverso da quello che scrive potresti
avere i dati vecchi per circa 2 secondi, in quando il jet engine ha una
cache e il timeout di default per il flush fisico su disco č appunto 2
secondi.
Prova prima di rileggere richiamando DBEngine.Idle dbFlushCache (se non
ricordo male č dbFlushCache, per sicurezza controlla DBEngine.Idle) che
forza il flush su disco dei dati in cache.
Questo non vale (e non ho capito perchč) per i datacontrol, che continuano a
gestirsi per i fatti loro i dati.
Eventualmente anzichč
data1.RecordSource = ...
data1.Refresh
usa
data1.RecordSet = OpenRecordset(...)
e se ti serve un data1.Recordset.ReQuery
Questo lega i datacontrol a una gestione centralizzata.
Ciao


 gestirsi per i fatti loro i dati.
Non uso DataControl, faccio tutto da codice, cmq questa
info puo' essere utile a qualcun altro.
Provo subito.  Per ora ti ringrazio moltissimo
Ciao
Beppe

 forza il flush su disco dei dati in cache.
era DBEngine.Idle dbRefreshCache.
Non avevo trovato questo metodo (Idle) perche' cercavo
proprieta' e metodi del WorkSpace, del Db e del RecordSet.
Non mi era venuto in mente anche il DBEngine.
Grazie mille!  Non ho ancora provato, ma la descrizione del
metodo Idle sembra che descriva proprio il mio caso.
Ciao
Beppe
Newsgroup: it.comp.lang.visual-basic
Titolo: [?] Autocomposizione installazione

Ho completato un programma in VB5 (SP3) e volendo distribuirlo ho
utilizzato l'autocomposizione installazione, tuttavia ho notato che
vengono aggiunti numerosi file oltre al mio .exe e a 3 .ocx che avevo
previsto. Sapete se proprio tutti i file che vengono aggiunti sono
assolutamente necessari per eseguire il programma, o si può limare
qualcosa?
Eccone l'elenco:
	VB5IT.DLL
	MSVBVM50.DLL
	STDOLE2.TLB
	OLEAUT32.DLL
	OLEPRO32.DLL
	ASYCFILT.DLL
	CTL3D32.DLL
	COMCAT.DLL
	COMDLG32.OCX
	CMDLGIT.DLL
	COMCTL32.OCX
	CMCTLIT.DLL
	TNACTL.OCX
	ASYCFILT.DLL
	VB5STKIT.DLL
	MIOPROG.EXE
Grazie e ciao.

 wrote in message 38937FAE...@libero.it...



E SONO ANCHE POCHE!
Normalmente per un programma di una certa complessità, vengono inseriti
molti altri files che, solo apparentemente, non centrano con quanto tu hai
diciso di fare!
--
Bye from WildSkin
ICQ #48778908
--------------------------------------------------------------------------
Sito ufficiale del NG it_comp_lang_visual-basic
http://www.murialdo.it:8000/it_lang_vb/
--------------------------------------------------------------------------

 diciso di fare!
E così il mio prog da pochi KB si trasforma in un mostro da 3 MB!
^_____^
Cercherò di evitare domande stupide in futuro, eheheh...
Gazie e ciao.

 lo installa le abbia gia
OK, Grazie.
Newsgroup: it.comp.lang.visual-basic
Titolo: creare lista file pc?

avrei bisogno di catalogare alcuni file contenuti all'interno di una
determinata cartella del mio pc. Per evitare di farlo in maniera
manuale, avrei bisogno di automatizzare l'operazione tramite un
piccolo programmino (ho pensato al visual basic, ma non so se è la
strada migliore, per questo domando che cosa ne pensate). Si tratta di
scandagliare tutti i file contenuti all'interno della cartella
estrapolando e rendendo disponibile a me utente i seguenti dati: nome
file, data, percorso (se eventualmente salvato in una ulteriore
sottocartella), tipologia di file (doc, htm, ecc...) ed aprendolo per
prederne visione. A quel punto per ogni file io inserisco un commento
circa il contenuto e lo associo ai dati che visual basic mi ha
estratto, salvandolo in qualche file dal formato più semplice
possibile (txt mi viene in mente, data la sua notevole duttilità),
così posso creare un database dal quale effettuare delle ricerche per
argomento.

ci sono programmi che già fanno quello che chiedi tu.
Cerberus
-----------------------------------------------
www.cerberus.htmx.it

"pavibdama"
'*.vbs
Set sh = CreateObject("Shell.Application")
set fol = sh.browseforfolder(clng(0), "Browser", clng(0))
 on error resume next
  sn = fol.title
     if err.number <> 0 then  '--cancel was clicked.
        msgbox "Cancel was clicked.", 64, "Folder Browse"
        wscript.Quit
     else
        msgbox sn
    end if
i = 0
set fils = fol.items
  for each fil in fils
     if isfolder = false then
       s = s & 
fil.name
 & " - " & fil.size & " bytes" & " - " & fil.modifydate & vbcrlf
      i = i + 1
         if i = 1 then
             s1 = fil.path
             spath = left(s1, len(s1) - (len(
fil.name
) + 1))
              if instr(spath, "\") = 0 then
                spath = spath & "\"
              end if
         end if
    end if
  next
msgbox s
if spath <> "" then
     msgbox "Path of chosen folder:" & vbcrlf & spath
else
          sp = "a"
    Do while sp <> ""
        on error resume next
        Set fpar = fol.parentfolder
         sp = fpar.title
         if err.number <> 0 then
             pt1 = instr(sn, ":")
              if pt1 = 0 then
                 pt = instrrev(sn, "\")
                   if pt <> 0 then
                        sn = right(sn, len(sn) - pt)
                   end if
                exit do
              else
                 sp =  mid(sn, pt1 - 1, 2)
                 sn = sp & "\"
                 exit do
              end if
         end if
        err.clear
        Set fol = fpar
            If sp <> "" then
               col = instr(sp, ":")
                    if col = 0 then
                         sn = sp & "\" & sn
                    else
                         sp = mid(sp, col - 1, 2)
                         sn = sp & "\" & sn
                         exit do
                    end if
            end if
        loop
    '''''''msgbox "Path of chosen folder:" & vbcrlf & sn
end if
'Copia incolla su notepad e salva con estensione .vbs
'tutti i file (*.*)  poi ci clicchi sopra. (per esempio xxxx.vbs)
'se ti da' errore disattiva l'antivirus
--
Fosco
Newsgroup: it.comp.lang.visual-basic
Titolo: codice a barre

devo inserire un codice a barre che mi decodifichi un campo di un data
base. questo codice deve essere stampato su un report. nessuno di voi ha
mai realizzato un qualcosa del genere magari anche avvalendosi di dll o
qualcos'altro che possa aiutarmi?
grazie mille
andrea

...


Usa i fonts per codici a barre. Se mi dai la Email ti invio quello che uso
io.
giac...@agb.it


Newsgroup: it.comp.lang.visual-basic
Titolo: Per favore un esempio per leggere e scivere in qualunque parte del registro di sistema di Win

Mi piacerebbe vedere un esempio di come si può leggere/scrivere  nel
registro di configuazione di Windows in Visual Basic 6 e/o in Visual
basic.net
P.s. Se possibile gradirei la segnalazione di qualche libro che tratti gli
argomenti di riconoscimento di periferiche, controllo delle porte seriali,
parallele e Usb sempre con riferimento alla programmazione in VB.
Mille grazie a tutti!

 
basic.net
www.deja.com
ti aiuta, davvero:
http://groups.google.com/groups?hl=it&lr=&ie=UTF-8&oe=UTF-8&q=scrivere+regis
tro+group%3Ait.comp.lang.visual-basic

"Alfredo"
*.vbs >> scrive legge e cancella
'inizio
Dim oShell, bKey
Set oShell = WScript.CreateObject("WScript.Shell")
oShell.RegWrite "HKCU\Software\ACME\Pippo\", 1, "REG_BINARY"
oShell.RegWrite "HKCU\Software\ACME\Pippo\MindReader", "gg", "REG_SZ"
bKey = oShell.RegRead("HKCU\Software\ACME\Pippo\")
WScript.Echo oShell.RegRead("HKCU\Software\ACME\Pippo\MindReader")
'togli gli   '   qui sotto per cancellare le key
'oShell.RegDelete "HKCU\Software\ACME\Pippo\MindReader"
'oShell.RegDelete "HKCU\Software\ACME\Pippo\"
'oShell.RegDelete "HKCU\Software\ACME\"
'fine
--
Fosco
Newsgroup: it.comp.lang.visual-basic
Titolo: Contascatti

Salve a tutti,
ho realizzato un'applicazione con VB 6 in cui uso WinSock per leggere il
LocalIP del computer in cui è in funzione.
Avrei la necessità di leggere questo dato ogni secondo per cui ho usato un
Timer che ogni secondo mi comunica il valore di WinSock.LocalIP
Mi sono accorto però che ripete continuamente lo stesso IP anche se in
realtà è cambiato. Mi dà l'indirizzo esatto solo quando lancio l'esecuzione
del programma.
Come posso aggiornare realmente il LocalIP.
Grazie 1000.
Andre@


Ci si risente.
Rispondendo ad un tuo precedente sull'argomento, ti avevo
consigliato di chiudere la sessione corrente prima di tentare
la lettura dell'IP della macchina.
Forse però quello che ti manca è il metodo di istanziamento
del controllo Winsock.
Per creare una sessione Winsock coerente, occorre creare un
nuovo socket per indurre un refresh della lettura dell'IP assegnato
alla macchina in un determinato istante.
Ponendo che l'oggetto Winsock si chiami "WSock", si crea
a design-time  un array di tale controllo impostando la proprietà
Index a 0. A run-time si scrivere:
   'Crea un nuovo oggetto Winsock con indice 1
   'Viene creato un nuovo socket
   Load WSock(1)
   'Termina la sessione di WSock(0)
   WSock(0).Close
   'LocalPort a 0 per evitare conflitti
   WSock(1).LocalPort = 0
   WSock(1).Listen
   'Mostra l'IP corrente
   Text1.Text = WSock(1).LocalIP
   'Chiude la sessione del socket creato (chiude il socket)
   Unload WSock(1)
Creando un nuovo socket, viene automaticamente aggiornato
il LocalIP della macchina locale.
Ciao


Dal topic mi sembra di capire che vuoi realizzare un contascatti interrogando ogni secondo l'IP
della macchina? Così dici: se l'IP è diverso da 127.0.0.1 allora sono connesso ad internet?
mmmmm, mi sa che non è la via più breve..... Perché invece non controlli se è attiva una connessione
di Accesso Remoto? Per sapere come fare dai un'occhiata al mio sito o al sito comune
Ciao,
Moreno
#sirri#@
morenosoft.com
(togliete "#" dall'indirizzo)
Moreno Sirri VB Site - 
http://www.morenosoft.com/MSVBSite/
---------------------------------------------------------------------------
Le risposte alle tue domande le trovi sul Sito Comune di questo NewsGroup:
 
http://www.murialdo.it/it_lang_vb
---------------------------------------------------------------------------

Io penso che il problema sia nel protocollo si Rete TCP/IP, infatti in ogni
pacchetto ricevuto o inviato dall' host c'è sempre l'indicazione
dell'indirizzo IP sia del client che del server, ora il winsock una volta
instanziato (e quindi una volta che cominci a far girare il programma) e
connesso riceve il pacchetto TCP/IP dall'host remoto nel quale c'è anche il
suo indirizzo IP, così se vuoi verificare l'IP di un host remoto ogni tot
tempo, non ha senso secondo me,in quanto questo cambia con ogni connessione
(quindi dovrai gestire l'evento Close del winsck), a meno che tu non voglia
gestire connessioni multiple e allora devi instanziare winsock multipli .
Ad aggiornarci by Michele.
Moreno Sirri ha scritto nel messaggio ...

Newsgroup: it.comp.lang.visual-basic
Titolo: come fare report di una query

Ciao a tutti,
Il mio problema è il seguente :
Ho creato una specie di autocomposizione che  permettere ad
un utente di selezionare solo un numero di record attraverso una
query conposta.Ora come faccio a fare un report di tale selezione?
Grazie tante ogni aiuto è gradito

 wrote in message
82ormj$d...@dante.italia.com...

se hai usato DataEnvironment carica un datareport e porta i campi della
query direttamente sul datarepoort col mouse e col tasto destro premuto.

Se usi Crystal devi aprire il report che usa la stessa query senza selezione
e impostare la Prop del controllo Crystal SelectionFormula con gli stessi
parametri di selezione (opportunamenmte modificati con la sintassi di
Crystal)
Oppure prepari direttamente il report con l'oggetto Printer
Ciao Stefano

Newsgroup: it.comp.lang.visual-basic
Titolo: Posizionare un form ma se cambia la risoluzione!?!

Ho provato a inserire nel mio programma
let Me.Left = posizione_x
let Me.Top = posizione_y
come mi avevate detto e fin qui funziona tutto perfettamente ma se la
risoluzione cambia il form che fine fa!?!
Cioč io ho dato delle cordinate precise ma se si va in 800x600 invece di
640x480 il risultato e totalmente diverso cioč la posizione in cordinate č
sempre la stessa ma sul monitor risulta in un altra posizione

 640x480 il risultato e totalmente diverso cioè la posizione in cordinate è


Newsgroup: it.comp.lang.visual-basic
Titolo: SESSO SCIOCCANTE

http://www.euro-net.3000.it
 B
FXB
DB
SRE
GV
RSFG
SREG
SG
7HTDYJN7T6
KJ8T7U
R
6REH7
ERGE54
TE
RF6
TFG
45
RF
5
TWRF5F5G
6DRG
H
TH
86
TUI

Chi ti ha detto le mie misure? :-PPP

 Chi ti ha detto le mie misure? :-PPP
90-60-90 ? :P

 wrote in message
news:DQqJ9.3015$lV4....@news2.tin.it...


http://euronet.isfun.net
http://c1b.xredirect.com
W
W
W
W
WEE
E
EE
E
E
W
W
W
Newsgroup: it.comp.lang.visual-basic
Titolo: non legge dll c++

ho scritto una dll c++
quando tento di collegarmi da VB con declare,
ottengo sempre lo stesso errore "impossibile trovare il file" (che
ovviamente invece c'e')
qualcuno ne sa qualcosa
ciao, e grazie
--------------------------------
Inviato via 
http://usenet.iol.it

 ovviamente invece c'e')
Dove si trova la dll?
E la tua app?
Come l'hai dichiarata?
Con cosa l'hai scritta?
Fa riferimento ad altre dll?
Da C++ funziona?
Ciao

Da C++ funziona?
si
in ogni caso,
ribadisco che non 'trova' il file Dll (che c'e', ovvio)
grazie per ogni
aiuto


 no
Neanche a runtimes strani?
Ad. es. il Borland C++B linka esternamente le VCL.
Ciao

 ??
la DLL deve stare nella directory dell'applicazione, nella system,
oppure in una directory del PATH
--
Faber

 VB_CALL int WINAPI MyFunc()
E' meglio:
VB_CALL int __stdcall MyFunc()
{
    //Quello che vuoi
}
Ciao
--
Timothy Redaelli

 VB_CALL int __stdcall MyFunc()
WINAPI č una #define di __stdcall
Ciao

 ha scritto nel messaggio
news:SQ7k8.64625$_u5.1...@news1.tin.it...

Lo so', ma cosě devi per forza fare #include<windows.h> ed č meglio fare
meno include possibili (imho).
Ciao
--
Timothy Redaelli
timothy(dot)redaelli(at)email(dot)it
-----------------------------------
Links:
Sito Comune: 
www.it-lang-vb.net
MSDN: 
msdn.microsoft.com

 meglio fare meno include possibili (imho).
Ma va'. Gli include non costano nulla. Se li fagocita tutti il 
compilatore. Considerando anche che Windows non dichiara nessuna 
variabile extern, non vedo dove sia il problema
-- 
 < 
http://www.reactos.com/
 >  Open source clone of Windows NT. Current
     Don't stand, REACT!      version 0.0.19. C, C++ and ASM developers
                              and beta testers are welcome!

 variabile extern, non vedo dove sia il problema
giŕ...
tra l'altro, non credo proprio che il compilatore fornito con VB sia
altrettanto efficiente  :\
--
Faber
Newsgroup: it.comp.lang.visual-basic
Titolo: EXE in MDIForm

Ciao.
Ho una MDI Form in cui dovrei "inglobare" le forms di diversi eseguibili
come MDI Child...
per esempio inserire la finestra del NotePad e della calcolatrice di windows
in una MDI...
Ho trovato delle API che permettono di reperire l'handle della form
dellě'eseguibile attivo e
di impostarlo come MDI Child ma una volta che vedo la form all'interno della
MDI l'eseguibile
in questione si pianta...
Qualcuno sa dirmi come si puň fare?
Grazie 1k
pEIO

 in questione si pianta...
bho, mai capitato , setparent , funzia tutto bene a me, che intendi con "si
pianta" ?
-- 
<Gigio2K>
Sito Comune
Nokia -> I.T.H.N. -> 
http://www.ithn.it/
VB -> I.C.L.VB -> 
http://www.it-lang-vb.net/

Newsgroup: it.comp.lang.visual-basic
Titolo: Chudere un'applicazione (2)

***************************************************
L'INDIRIZZO E-Mail DEL MESSAGGIO PRECEDENTE ERA SBAGLIATO!!!
***************************************************
Carissimi, avrei un problema:
Devo chiudere un'applicazione. (un motore database prima di fare un
backup). Non so però quando l'applicazione è stata avviata.
Il mio sistema operativo è WINNT 4.0 SERVER
Grazie a TUTTI, in anticipo...
F.M.


Usi le funzioni API.
Versione semplice, ma funzionante:
Con FindWindow() trovi l'hWnd della finestra principale (dovrebbe averne una
;-) dell'applicazione esterna (sapendo il window class name o la caption
della finestra).
Poi con SendMessage mandi un WM_QUIT a quel hWnd.
Chiaramente se non trovi l'hWnd, vuol dire che l'applicazione non e' in
esecuzione.
--
Roal Zanazzi
z...@iol.it

Newsgroup: it.comp.lang.visual-basic
Titolo: gestione stampante ad aghi

salve a tutti...
sto realizzando un programma il quale output verrŕ indirizzato ad una
stampante ad aghi...
la mia domanda č: esiste un qualche modo per poter pilotare il rullo della
stampante (indietro e avanti) da vb?
grazie
Samuele

Certo...per stampare apri la porta parallela..LPT1 o LPT2 come un file>
Open "LPT1:" For Output As 1
e poi tutto quello che scrivi con Print #1,stringa$; verrà stampato.
Per controllare il rullo non devi fare altro che vedere i codici ESCAPE che
servono per far muovere il rullo...e scriverli dentro il file:
Open "LPT1:" For Output As 1
?#1,"PROVA";
?#1,Chr$(27)+Chr$(69); 'codici inventati
?#1,"PROVA2";
Close 1
Gianni Moretti


Newsgroup: it.comp.lang.visual-basic
Titolo: Utilizzo di Set

Scusate la mia ignoranza, ma cosa cambia nelle due righe seguenti?
Set Picture1.Picture = LoadPicture("c:\imm.bmp")
Picture1.Picture = LoadPicture("c:\imm.bmp")

Allora... l'istruzione set imposta una variabile oggetto ad un'istanza di
una classe...
La migliore risposta alla tua domanda sarebbe su un manuale...
MA UN BELL' F1 su SET... Farebbe grandi cose...
                        Ciao
                                Allanon

 ha scritto nel messaggio
news:9nnogi$8len0$1...@ID-67444.news.dfncis.de...

Ho già cercato su F1 e su Manuale, ma visto che mi è capitato fra le mani un
progetto che utilizza set per caricare un'immagine su una picturebox mi sono
chiesto il perchè.L'utilizzo in questa situazione non è previsto sull' Help.
Grazie comunque.
--
Ivan Castellaro
Mettere un punto tra nome e cognome per l'e-mail.
ivancas...@libero.it

 chiesto il perchè.L'utilizzo in questa situazione non è previsto sull'
Help.
Scusa la mia fretta nel rispondere "male"...
Non volevo...
Probabilmente  la property picture é stata implementata sia come property
Let che come property Set (e non so nemmeno se si possa effettivamente fare)
                        Bye bye
                                    Allanon

 Picture1.Picture = LoadPicture("c:\imm.bmp")
Well, l'istruzione set per quello che so, non copia direttamente l'immagine
nella picture, ma crea un puntatore che punti a quell'indirizzo di memoria.
In questo modo forse si risparmia spazio evitando di appesantire
il programma.
In ogni caso, rispondimi se non è così o non hai capito qualcosa.
Ciao, Peppe


[cut]
Penso di aver capito.
Quindi secondo te e meglio l'utilizzo di Set ?
Come mai non documentano questi "trucchetti" da nessuna parte?
Grazie mille


 Come mai non documentano questi "trucchetti" da nessuna parte?
nel mio VB: Set e premo F1
Istruzione Set
Assegna un riferimento a un oggetto a una variabile o a una proprietą.
Picture infatti č un oggetto, non un tipo di dati.
--
Fibia "Service Bot" FBI

 ha scritto nel messaggio
news:9npn59$90fg1$1...@ID-66902.news.dfncis.de...

Prova a scrivere Loadpicture e prenmere F1.
Come mai non utilizzano il Set?
Grazie comunque della delucidazione.

 ha scritto nel messaggio
news:9npokj$3l$1...@fe1.cs.interbusiness.it...
Oppsssss...... Grandissima Ca**ata !!
Ho guardato solo l'esempio. Scusa!


 Come mai non utilizzano il Set?
?!?!?!
che razza di guida hai?
nel mio VB5 Help
LoadPicture -> F1 (detto anche tasto FM)
Funzione LoadPicture
Carica un'immagine grafica in un oggetto Form, un controllo PictureBox o un
controllo Image.
...
Set Picture = LoadPicture("FESTA.BMP")
Set Picture1.Picture = LoadPicture("FESTA.BMP")
..
Set Form1.Icon = LoadPicture("MIAICONA.ICO")
etc..
tutti gli esempi utilizzano Set :)
P.S. Provato anche con VB6.. stesso esempio
--
Fibia "Sakamoto" FBI
E-mail: 
fibi...@hotmail.com
ICQ UIN 63586057
Sito Personale: 
http://www.geocities.com/fibiafbi
VB Simple: 
http://vbsimple.virtualave.net
Membro #26 delle Mitiche Brigate Takahashi sezione Sud

 Let che come property Set (e non so nemmeno se si possa effettivamente
fare)
Sě si puň fare.
E a quanto sembra č proprio cosě.
Ciao
Newsgroup: it.comp.lang.visual-basic
Titolo: [?] Scegliere una directory

Ciao a tutti,
       se devo far selezionare un file all'utente di solito uso il metodo
ShowOpen o ShowSave del controllo CommonDialog. Ma come faccio a far
selezionare una cartella, una directory?

 selezionare una cartella, una directory?
prova un po':
'frm
(dim imgpath as string, oldimgpath as string)
Private Sub cmdSetup_Click()
    On Error GoTo errman
    OldImgPath = ImgPath
    Dim tmp
    tmp = BrowseForFolder(Me.hwnd, _
        "Current folder: " & OldImgPath & "." & vbCrLf & _
        "The folder should contain...." & vbCrLf & _
        "Clic Cancel to keep the current folder.")
    If tmp <> "" And Right(tmp, 1) <> "\" Then tmp = tmp & "\"
    ImgPath = IIf(tmp <> "", tmp, OldImgPath)
    RefreshAll
    If Not ImgTrue Then
        MsgBox ("Folder does not contain any bitmaps! Run setup again!")
        ImgPath = GetWinDir()
        Exit Sub
    Else
        File1.SetFocus
        File1.ListIndex = 0
    End If
    Exit Sub
errman:
    MsgBox Error
    ImgPath = GetWinDir()
End Sub
Private Function BrowseForFolder(hWndOwner As Long, sPrompt As String) As
String
    Dim iNull As Integer
    Dim lpIDList As Long, lResult As Long
    Dim sPath As String
    Dim udtBI As BrowseInfo
    udtBI.hWndOwner = hWndOwner
    udtBI.lpszTitle = lstrcat(sPrompt, "")
    udtBI.ulFlags = BIF_RETURNONLYFSDIRS
    lpIDList = SHBrowseForFolder(udtBI)
    If lpIDList Then
        sPath = String$(MAX_PATH, 0)
        lResult = SHGetPathFromIDList(lpIDList, sPath)
        Call CoTaskMemFree(lpIDList)
        iNull = InStr(sPath, vbNullChar)
        If iNull Then sPath = Left$(sPath, iNull - 1)
    End If
    BrowseForFolder = sPath
End Function
Private Function GetWinDir() As String
    Dim Temp As String * 256
    Dim x As Integer
    x = GetWindowsDirectory(Temp, Len(Temp))
    GetWinDir = Left$(Temp, x)
    GetWinDir = IIf(Right(GetWinDir, 1) = "\", GetWinDir, GetWinDir & "\")
End Function
'bas
Public Type BrowseInfo
    hWndOwner As Long
    pIDLRoot As Long
    pszDisplayName As Long
    lpszTitle As Long
    ulFlags As Long
    lpfnCallback As Long
    lParam As Long
    iImage As Long
End Type
Public Const BIF_RETURNONLYFSDIRS = 1
Public Const MAX_PATH = 260
Declare Sub CoTaskMemFree Lib "ole32.dll" _
    (ByVal hMem As Long)
Declare Function lstrcat Lib "kernel32" Alias "lstrcatA" _
    (ByVal lpString1 As String, ByVal lpString2 As String) As Long
Declare Function SHBrowseForFolder Lib "shell32" _
    (lpbi As BrowseInfo) As Long
Declare Function SHGetPathFromIDList Lib "shell32" _
    (ByVal pidList As Long, ByVal lpBuffer As String) As Long
Declare Function GetWindowsDirectory Lib "kernel32" Alias
"GetWindowsDirectoryA" _
(ByVal lpBuffer As String, ByVal nSize As Long) As Long

Ciao a tutti,


 ha scritto nel messaggio
news:5IXE5.6312$Z95.2...@news.infostrada.it...

Utilizza il controllo DirListBox
--
 
federic...@planet.it
Eliminare NOSPAM dall'indirizzo! Delete NOSPAM from address!