Newsgroup: it.comp.lang.visual-basic
Titolo: [net] due o tre cose che non trovo

1. ide 
reinstallato vs2008 per la terza, continua a dare lo stesso errore.
se clicco su un s.ln, apre il progetto. ma se nel solution explorer clicco
su form1.vb:
---------------------------
Microsoft Visual Studio
---------------------------
There is no editor available for 'K:vbnetProjectswa2008wbwa2008wbForm1.vb'.
Make sure the application for the file type (.vb) is installed.
---------------------------
OK   
---------------------------
stessa cosa anche se creo un nuovo progetto.
se nel solution explorer clicco su myproject:
---------------------------
Microsoft Visual Studio
---------------------------
Unable to create the designer.  No DesignerService for file
'K:vbnetProjectswa2008wbwa2008wbwa2008wb.vbproj'.
---------------------------
OK   
--------------------------
prima di passare una giornata a ripulire il registro, c'e' modo di
ripristinare?
se clicco su form1.vb in explorer, apre l'editor, ma solo tipo blocco
note, anche se taggato e colorato.
2. autenticazione proxy
il form ha un webbrowser che mostra un jpeg.
quando sale, in ufficio mi chiede l'autenticazione col login di ie.
fin qui, come in vb6, dove con una vecchia chiamata di vb2themax scarico
il file ereditando l'autenticazione.
per salvare l'immagine, con 2008 uso
My.Computer.Network.DownloadFile(sUrlImage, sLastCapture)
e funziona, pero' non eredita l'autenticazione dal wb.
dove gliela passo?
come non detto, trovata, anche se non andando vs non posso provare, e a
casa dove vs va non c'e' il proxy :)
http://msdn2.microsoft.com/en-us/library/ack30t8y(VS.80).aspx
3. lanciare explorer
in vb6 usavo
    Shell "explorer.exe /e, " & App.Path, vbNormalFocus
nel 2008 mi aspetterei qualcosa tipo my.computer.directory.explore o
system.io.folder.explore, ma ho passato davvero parecchio tempo nell'help
e sui gruppi dotnet, e come chiavi di ricerca "explore(r)"
"folder/directory" e "shell" non sono il massimo. come si fa, evitando
shell?
grazie, a.
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 shell?
Per lanciare un programma esterno puoi usare la classe 
Process.Start(NomeFile, Parametri).
-- 
news:it-alt.comp.software.openoffice : Il newsgroup dedicato a
OpenOffice.org, la suite open source di applicazioni per ufficio.
Saluti, VITRIOL

 Process.Start(NomeFile, Parametri).
scusa, mi sono dimenticato.
si', process.start l'avevo trovato, ma che il framework per lanciare
explorer.exe debba aprire un processo esterno mi stupiva, dato che su
cartelle e file da' tutte le info possibili.
non hai mai incontrato un metodo nativo?
garzie, a.


 non hai mai incontrato un metodo nativo?
Sinceramente non lo so, ma ci sarebbe la necessità? Si può passare anche 
direttamente il percorso, fa tutto lui. Es:
Process.Start("C:\Windows")


 Make sure the application for the file type (.vb) is installed.
Provato a guardare qui? Ci sono un po' di possibili soluzioni sparse, 
che comunque non si riferisco specificatamente alla versione 2008.
http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=134441&SiteID=1
http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=75492&SiteID=1


Trovato anche questo feedback. Hai per caso disinstallato VS 2005 dopo 
avere installato VS 2008?
https://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=314242&wa=wsignin1.0


 avere installato VS 2008?
grazie per avere cercato.
si', esattamente.
se non altro mi conferma che non ho le allucinazioni.
sono stato un po' fesso io a non metterli in una o due vm. d'altronde vs, 
anche su questo pc, e' abbastanza pesante.
oggi dopo un altro tentativo ho cominciato a togliere tutto, comprese le 
minime e minori, e le maggiori (sql e framework). poi provo a pulire disco e 
registro e a rimettere vs2008, poi a fare wupdate, se servono fw vecchi me 
lo dira'.
in ufficio d'altronde non ho quasi mai nemmeno il tempo di aprire vs, ma 
testare ide e app in due sistemi diversi mi incuriosiva.
lanciare explorer con process.start funziona, grazie. era cosi' semplice...
domanda oop. che differenza c'e' fra queste due forme, che funzionano tutt'e 
due?
    Dim p As New Process 'imports system.diagnostic
    p = Process.Start(sLastCapture)
e
    Dim p As Process = Process.Start(sAppSnapPath)
?
ancora non ho capito quando devo mettere new.
adesso devo mettere a punto la lettura dell'ini, e la 
jcam.net
 fara' circa 
le stesse cose dell'altra. poi se vuoi ti mando le due versioni.
<atto di contrizione>pur andando a tentoni, il codice e' infinitamente piu' 
pulito</>
anche perche' nei commenti non metto il numeroso sangue-sudore-lacrime :)
infine ho visto che se tolgo la spunta nei riferimenti a ms.vb, mi segna 
parecchie cose, tipo now. voglio cercare gli equivalenti.
conosci qualcosa tipo questo
http://msdn2.microsoft.com/it-it/library/1394ft8w.aspx
che oltre a dirti come si fa con ms.vb dice anche come si potrebbe fare 
senza?
l'unica cosa che rimpiango e' l'help di vb6. mi ci trovavo benissimo. qui 
arriva troppa roba, e in ordine sparso, ci si perde davvero, dovrebbero 
farsi fare gli algoritmi di ricerca da google :)
ciao, a.

 senza?
Secondo me non è possibile togliere totalmente il riferimento a 
Microsoft.VisualBasic, perché mi pare di avere letto che è usato per 
alcune funzioni direttamente dal compilatore. Però mi posso 
tranquillamente sbagliare.
La maggior parte delle cose le puoi comunque fare direttamente coi 
metodi del Framework, ma non tutte le funzioni VB hanno un equivalente.
Se programmi senza usare quello che espone Microsoft.VisualBasic, 
otterrai un codice molto più simile a quello che ottieni programmando in 
C#, e non è che sia proprio un male.
Nel caso specifico se tu fai Now() lui ti usa 
Microsoft.VisualBasic.Now(), che non fa altro che richiamare 
DateTime.Now. Dove, ancora una volta, Now() è un metodo statico della 
classe DateTime :-)
Per la cronaca, il tipo Date di VB, anche lui non è altro che un alias 
alla classe DateTime di .NET.


 adesso devo mettere a punto la lettura dell'ini
Me ne accorgo adesso... devi proprio usare un file ini? In VS si sono 
gli Application Settings, che sono un sistema molto potente e più 
conforme a .NET. Il Framework non ha un supporto nativo per la lettura e 
scrittura degli ini. Non vogliono che li usi :-)
Se proprio non ne puoi fare a meno, e ti interessa qualcosa di già 
pronto, puoi guardare questa libreria:
http://www.codeproject.com/KB/cs/readwritexmlini.aspx


 
http://www.codeproject.com/KB/cs/readwritexmlini.aspx
grazie, ma al momento e' un ini di 2 (due) righe, user e pass per il proxy.
ho bisogno di sapere che domattina posso provarlo anche se vs non va.
ti ho detto che il codice e' piu' pulito. *quindi* :) non soggiacero' alla 
logica di word, che "hello world" lo salva come xml (non standard) di 20k.
so che ci sono i settings, cannalire al corso l'aveva esemplificato, ma so 
anche che, p.e. nel caso di allusers, qualche casino rischia di esserci. e 
senz'altro non e' la parte che mi preme ora.
la sub qui sotto funziona. per il momento, almeno gli ini sono miei e me li 
gestisco io :)
ciao, a.
btw1. le dir di vs direi non abbiano lo slash finale. mentre cerco di 
capirne lo scopo, preferisco riferirmi a stringhe con lo slash.
btw2. eri giovane, ma gia' col registry dissero che era migliore degli ini. 
ogni tanto anche ms canna. con degli ini, in ufficio starei beatamente 
usando 2008 *dopo* avere disinstallato 2005. quando ho imparato vb6, ho 
imparato subito a scrivere nel registro. quando ho capito vb6, ho smesso di 
scrivere nel registro e cominciato a usare dei ini=txt. gia' gli ini 
classici mi sembrano alquanto farraginosi per le mie esigenze.
    Private Sub IniRead()
        Dim s As String, a() As String
        Dim sr As New StreamReader(sAppSysPath & "javacam.ini")
        Do While Not sr.EndOfStream
            s = sr.ReadLine()
            s = s.Trim
            If s.Contains("::") Then
                a = Split(s, "::")
                If (a(0)).Trim = "proxyuser" Then sProxyUser = a(1).Trim
                If (a(0)).Trim = "proxypass" Then sProxyPass = a(1).Trim
            End If
        Loop
        sr.Close()
    End Sub

 
http://msdn2.microsoft.com/en-us/library/ack30t8y(VS.80).aspx
che pero' al momento non va molto.
vs2008, eliminate nel registro le chiavi
HKey_Local_MachineSoftwareMicrosoftVisualSudio 8 e 9, e reinstallato vs,
va.
ma quando cerco di salvare un jpg, in debug appare
A first chance exception of type 'System.Net.WebException' occurred in
System.dll, cioe' The request is denied by the website.
infatti lanciando il compilato, appare la finestra di errore che dice
'autenticazione richiesta'
solo che user e pass li carico all'inizio, e li passo alla chiamata:
If mnuOptionsProxy.Checked Then
My.Computer.Network.DownloadFile(sUrlImage, sLastCapture, sProxyUser,
sProxyPass)
l'errore rimane anche se al posto delle variabili passo proprio le
stringhe di user e pass.
cosa sto sbagliando?
grazie, a.
btw


 cosa sto sbagliando?
Garda, io non se so nulla e non posso provare, però la sparo lo stesso. 
Poi vedi tu :-)
Secondo me, se sei dietro a un proxy, funziona in modo diverso 
l'autenticazione.
Prova ad usare la classe Net.WebClient, che permette di specificare un 
proxy e le credenziali.
Una cosa del genere *assolutamente non testata* e quasi sicuramente non 
funzionante, ma solo per darti una idea sulla possibile direzione in cui 
cercare:
Dim WbCl As New Net.WebClient
Dim Pxy As New Net.WebProxy("indirizzo proxy")
WbCl.Proxy = Pxy
WbCl.Proxy.Credentials = New Net.NetworkCredential("utente", "password")
WbCl.DownloadFile("sorgente", "destinazione")


 l'autenticazione.
un po' mi stupirebbe, perche' appena lancio il prog qui mi chiede
l'autenticazione come ie, ma provo anche questa dritta. poi cerco di
(farmi) mettere a casa un proxy in una vm in modo da poter provare,
ora stiamo chiudendo e qui torno il 27, quindi sara' molto teorico.
divagazione.
in effetti poter delegare (se le si trova) molto codice di costruzione
a classi gia' pronte ti fa concentrare molto di piu' su quello che
puo' fare il programma finale, piuttosto che su come arrivarci. oddio,
questo, una volta che uno e' un po' entrato nel sistema, e io ne sono
ben lontano.
mi sono reso conto che anziche' le due sole webcam di java, posso
adattarlo facilmente (con un ini-txt :) in modo che punti a qualunque
web pubblichi direttamente un jpg.
questi
http://www.firenzemeteo.com/webabetonecimone.htm
hanno p.e. delle cam 800 e 1024.
diventa un esercizio interessante...
ciao, a.

 funzionante
io non lo mangio, ma se tu si', oltre ai tortellini hai diritto al
cotechino :)
ieri qui andava vs ma era crollato il provider.
oggi e' andata praticamente al primo colpo.
ci si puo' fare di tutto, p.e.
http://www.arcadiaclub.com/progra/scaricare_file_internet_http_url_download_webclient.htm
mi continuo a chiedere a cosa serva l'autenticazione di downloadfile.
grazie, a.


 mi continuo a chiedere a cosa serva l'autenticazione di downloadfile.
Io creda che serva se l'autenticazione è richiesta dal server che porta 
il file al quale stai tentando di accedere.
Un proxy è diverso... o no?


 Un proxy è diverso... o no?
non lo so. indaghero' c/o sistemisti. e' che se valorizzi le var user/pass, 
downloadfile senza proxy come se niente fosse, con proxy errore comunque.
ricordati il cotechino :)
ciao, a.

 ricordati il cotechino :)
E chi se lo scorda un cotechino, soprattutto in questo periodo? :-)
