Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Star Wars Zero Company è l'erede di XCOM 2
Star Wars Zero Company è l'erede di XCOM 2
Bit Reactor porta nell’universo di Star Wars una struttura tattica che richiama apertamente XCOM 2, ma la arricchisce con legami tra i personaggi, progressione ruolistica, gestione della base e un sistema di combattimento costruito attorno a tre Punti Azione e alle risorse condivise della squadra
Test ride Can-Am Origin: la moto elettrica che fa dimenticare il motore a scoppio (ma occhio all'autonomia)
Test ride Can-Am Origin: la moto elettrica che fa dimenticare il motore a scoppio (ma occhio all'autonomia)
Abbiamo provato per una settimana intera la Can-Am Origin, la Dual Sport elettrica del gruppo canadese BRP: ecco com'è andata tra città, autostrada e un primo assaggio di sterrato
Logitech G325, G305 e G316 X: il tris per chi non vuole rinunciare a nulla, spendendo poco
Logitech G325, G305 e G316 X: il tris per chi non vuole rinunciare a nulla, spendendo poco
Nelle ultime settimane abbiamo provato il mouse Logitech G305, la tastiera G316 X 98 e le cuffie G325. Si tratta del setup entry-level di Logitech che ormai, di "entry-level" ha ben poco. Tastiera e mouse offrono prestazioni di livello competitivo con quasi nessuna rinuncia e un livello di personalizzazione estremamente elevato. Le cuffie, invece, hanno mostrato qualche debolezza, ma propongono un ventaglio di funzionalità completo che consente di abbandonare completamente i cavi
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 28-09-2009, 11:02   #1
RaouL_BennetH
Senior Member
 
L'Avatar di RaouL_BennetH
 
Iscritto dal: Sep 2004
Messaggi: 3967
[.Net]Conversione da C# a VB.Net

Ciao a tutti

Devo utilizzare una libreria che mi sono fatto in C# in un progetto Vb.Net

Messo il reference al progetto, devo ora richiamare un metodo che in C# è:

Codice:
GUIResource.FormDialog fd = new GUIResource.FormDialog(10);
System.Threading.Thread t = new System.Threading.Thread(fd.WaitMessage);

t.Start();
L'equivalente che ho scritto in Vb è:

Codice:
Dim fd as New GUIResource.FormDialog(10)
Dim t as New System.Threading.Thread(fd.WaitMessage)
t.Start()
Ma in Vb il compilatore mi segnala che:

Codice:
Expression does not produce a value
Grazie a tutti

RaouL.
__________________
Dai wafer di silicio nasce: LoHacker... il primo biscotto Geek
RaouL_BennetH è offline   Rispondi citando il messaggio o parte di esso
Old 28-09-2009, 11:05   #2
RaouL_BennetH
Senior Member
 
L'Avatar di RaouL_BennetH
 
Iscritto dal: Sep 2004
Messaggi: 3967
Come non detto:

Codice:
Dim t as New System.Threading.Thread(AddressOf fd.WaitMessage)
__________________
Dai wafer di silicio nasce: LoHacker... il primo biscotto Geek
RaouL_BennetH è offline   Rispondi citando il messaggio o parte di esso
Old 28-09-2009, 12:17   #3
MarcoGG
Senior Member
 
L'Avatar di MarcoGG
 
Iscritto dal: Dec 2004
Messaggi: 3210
Quote:
Originariamente inviato da RaouL_BennetH Guarda i messaggi
Devo utilizzare una libreria che mi sono fatto in C# in un progetto Vb.Net
Oppure compilare la libreria C# come DLL, e usarla in VB...
MarcoGG è offline   Rispondi citando il messaggio o parte di esso
Old 28-09-2009, 13:16   #4
RaouL_BennetH
Senior Member
 
L'Avatar di RaouL_BennetH
 
Iscritto dal: Sep 2004
Messaggi: 3967
Quote:
Originariamente inviato da MarcoGG Guarda i messaggi
Oppure compilare la libreria C# come DLL, e usarla in VB...
Ciao MarcoGG

Si, in effetti è molto più pratico

Ne approfitto visto che sei qui

Ma si può fare anche il contrario?

Cioè, in considerazione del fatto che in vb.net ci sono moltissime funzioni matematiche già pronte e disponibili, di più semplice implementazione ed utilizzo, potrei anche farmi la mia class library in vb da usare in soluzioni c# ?


Grazie mille

RaouL.
__________________
Dai wafer di silicio nasce: LoHacker... il primo biscotto Geek
RaouL_BennetH è offline   Rispondi citando il messaggio o parte di esso
Old 28-09-2009, 13:41   #5
MarcoGG
Senior Member
 
L'Avatar di MarcoGG
 
Iscritto dal: Dec 2004
Messaggi: 3210
Quote:
Originariamente inviato da RaouL_BennetH Guarda i messaggi
Ma si può fare anche il contrario?

Cioè, in considerazione del fatto che in vb.net ci sono moltissime funzioni matematiche già pronte e disponibili, di più semplice implementazione ed utilizzo, potrei anche farmi la mia class library in vb da usare in soluzioni c# ?
Che io sappia Sì ! Una delle caratteristiche più interessanti della piattaforma .NET sta appunto in questo.

Ammetto di non aver sperimentato questo fatto in tutte le possibili vie, ma posso dirti che recentemente ho usato in un progetto VB.NET diverse dll, abbastanza complesse, create in C# senza problemi.
La stessa iTextSharp si può usare benissimo in VB.NET.

Se alludi allo spacename Math ( Math.Abs, Math.Acos, ecc... ), è disponibile anche in C#. In ogni caso, nessun problema.
MarcoGG è offline   Rispondi citando il messaggio o parte di esso
Old 28-09-2009, 16:16   #6
RaouL_BennetH
Senior Member
 
L'Avatar di RaouL_BennetH
 
Iscritto dal: Sep 2004
Messaggi: 3967
Ottima cosa !

Lo dico perchè spesso per trattare i dati a livello di form tra vb.net e c# c'è differenza, nel senso che nel primo fortunatamente non si devono specificare molti cast (per es. un valore che dev'essere intero può essere tranquillamente letto come txtQualcosa.Text, senza fare int.Parse(blabla))

Per le funzioni matematiche ho fatto un pò di confusione, alludevo a diverse funzioni per la manipolazione delle date.

Credo quindi che mi semplifico la vita lasciandomi soltanto la gestione della UI con Vb.

....Una domandina al volo per evitare di aprire un altro 3d:

Te ne intendi dello strumento per i report integrato in visual studio ? (ReportViewer).

Se si, cercavo un modo per preservare delle formule presenti nel report quando lo esporto in excel, ma non ho ancora trovato una soluzione....

Grazie ancora

RaouL.
__________________
Dai wafer di silicio nasce: LoHacker... il primo biscotto Geek
RaouL_BennetH è offline   Rispondi citando il messaggio o parte di esso
Old 28-09-2009, 18:03   #7
MarcoGG
Senior Member
 
L'Avatar di MarcoGG
 
Iscritto dal: Dec 2004
Messaggi: 3210
Quote:
Originariamente inviato da RaouL_BennetH Guarda i messaggi
Ottima cosa !
Lo dico perchè spesso per trattare i dati a livello di form tra vb.net e c# c'è differenza, nel senso che nel primo fortunatamente non si devono specificare molti cast (per es. un valore che dev'essere intero può essere tranquillamente letto come txtQualcosa.Text, senza fare int.Parse(blabla))
Questo è uno dei tanti "miti" da sfatare sulle differenze tra VB.NET e C#.
Io sono tra quelli ( molti ) che considerano un certo cast implicito come una gran comodità, e non un difetto. Molti invece storcono il naso. Beh, non ne hanno motivo. In realtà c'è un modo molto semplice per impedire a VB.NET di passare per buona una cosa come :
Codice:
Dim a As Integer = TextBox1.Text
Basta impostare nelle opzioni di compilazione Option Strict = ON, che di default è OFF.

Quote:
Originariamente inviato da RaouL_BennetH Guarda i messaggi
Per le funzioni matematiche ho fatto un pò di confusione, alludevo a diverse funzioni per la manipolazione delle date.
Allora alludi allo spacename DateAndTime, che comunque si può usare benissimo anche da C#, referenziando Microsoft.VisualBasic. Certo mi rendo conto che per molti C-sharpiani è un bello scorno !

Quote:
Originariamente inviato da RaouL_BennetH Guarda i messaggi
Te ne intendi dello strumento per i report integrato in visual studio ? (ReportViewer).

Se si, cercavo un modo per preservare delle formule presenti nel report quando lo esporto in excel, ma non ho ancora trovato una soluzione....
No, ReportViewer non l'ho mai usato. Perchè, esporti su Excel e perdi le formule ?
MarcoGG è offline   Rispondi citando il messaggio o parte di esso
Old 28-09-2009, 18:20   #8
||ElChE||88
Senior Member
 
Iscritto dal: Dec 2003
Messaggi: 4908
Quote:
Originariamente inviato da MarcoGG Guarda i messaggi
Allora alludi allo spacename DateAndTime, che comunque si può usare benissimo anche da C#, referenziando Microsoft.VisualBasic. Certo mi rendo conto che per molti C-sharpiani è un bello scorno !
Chi usa Microsoft.VisualBasic in C# andrebbe fucilato (essendo sostanzialmente una libreria per facilitare il passaggio dal VB6 al VB.Net)

PS: namespace
PS2: Che c'è di male nell'universale DateTime?

Ultima modifica di ||ElChE||88 : 28-09-2009 alle 18:23.
||ElChE||88 è offline   Rispondi citando il messaggio o parte di esso
Old 28-09-2009, 20:05   #9
MarcoGG
Senior Member
 
L'Avatar di MarcoGG
 
Iscritto dal: Dec 2004
Messaggi: 3210
Quote:
Originariamente inviato da ||ElChE||88 Guarda i messaggi
Chi usa Microsoft.VisualBasic in C# andrebbe fucilato (essendo sostanzialmente una libreria per facilitare il passaggio dal VB6 al VB.Net)
Lo usano, lo usano, lascia fare...
Di nascosto, ma lo usano.

Quote:
Originariamente inviato da ||ElChE||88 Guarda i messaggi
PS: namespace
Ho scritto 2 volte spacename !
Vabbeh, la stanchezza...

Quote:
Originariamente inviato da ||ElChE||88 Guarda i messaggi
PS2: Che c'è di male nell'universale DateTime?
DateAndTime.DateDiff(), ad esempio...
DateTime.DateDiff() la vedo un po' dura...
MarcoGG è offline   Rispondi citando il messaggio o parte di esso
Old 28-09-2009, 20:12   #10
||ElChE||88
Senior Member
 
Iscritto dal: Dec 2003
Messaggi: 4908
Quote:
Originariamente inviato da MarcoGG Guarda i messaggi
Lo usano, lo usano, lascia fare...
Di nascosto, ma lo usano.
Andrebbero radiati dall'ordine dei programmatori C#.
Quote:
Originariamente inviato da MarcoGG Guarda i messaggi
DateAndTime.DateDiff(), ad esempio...
DateTime.DateDiff() la vedo un po' dura...
Che cosa fa che non si possa fare con DateTime e TimeSpan?
||ElChE||88 è offline   Rispondi citando il messaggio o parte di esso
Old 28-09-2009, 21:02   #11
MarcoGG
Senior Member
 
L'Avatar di MarcoGG
 
Iscritto dal: Dec 2004
Messaggi: 3210
Quote:
Originariamente inviato da ||ElChE||88 Guarda i messaggi
Andrebbero radiati dall'ordine dei programmatori C#.

Che cosa fa che non si possa fare con DateTime e TimeSpan?
No, no, non mi faccio tirare un'altra volta in una discussione di questo genere.
La mia risposta va semplicemente incontro alla richiesta di RaouL_BennetH, quando dice :
...in considerazione del fatto che in vb.net ci sono moltissime funzioni matematiche già pronte e disponibili... poi corretto in funzioni per manipolare date.
Che piaccia o no, DateAndTime fornisce molte funzioni comodissime, con buona pace degli integralisti del C#.
MarcoGG è offline   Rispondi citando il messaggio o parte di esso
Old 28-09-2009, 21:12   #12
RaouL_BennetH
Senior Member
 
L'Avatar di RaouL_BennetH
 
Iscritto dal: Sep 2004
Messaggi: 3967
Quote:
Originariamente inviato da MarcoGG Guarda i messaggi
Questo è uno dei tanti "miti" da sfatare sulle differenze tra VB.NET e C#.
Io sono tra quelli ( molti ) che considerano un certo cast implicito come una gran comodità, e non un difetto. Molti invece storcono il naso. Beh, non ne hanno motivo. In realtà c'è un modo molto semplice per impedire a VB.NET di passare per buona una cosa come :
Codice:
Dim a As Integer = TextBox1.Text
Basta impostare nelle opzioni di compilazione Option Strict = ON, che di default è OFF.
Personalmente, non storco il naso a nulla che possa semplificarmi le cose

Quote:
Allora alludi allo spacename DateAndTime, che comunque si può usare benissimo anche da C#, referenziando Microsoft.VisualBasic. Certo mi rendo conto che per molti C-sharpiani è un bello scorno !
Idem come sopra Infatti ho visto che ci sono diversi metodi già pronti soprattutto in merito a operazioni matematiche sulle date. Molto comodo devo dire

Quote:
No, ReportViewer non l'ho mai usato. Perchè, esporti su Excel e perdi le formule ?
No, non è che perdo le formule, cioè:

L'esportazione dei dati avviene correttamente, soltanto, cercavo un modo per dire ad excel di copiarsi le stesse formule contenute nel report viewer in modo da semplificare la vita all'utente una volta esportati i dati e non costringerlo a rifarsele nelle celle di pertinenza..


Per :
Quote:
||ElChE||88
Il mio problema attuale, è che sto mettendo mano ad un programma già fatto, che alle persone che lo usano va bene così com'è per molti aspetti.

Ce ne sono alcuni però che non rispondono completamente alle loro richieste e quindi, considerando che:

1) Me la cavicchio con C# ma non con VB.Net
2) Il programma suddetto è scritto in VB.Net e ci sono i sorgenti
3) Una parte del programma l'ho riscritta appunto in C# seguendo i miei criteri, con risultato appunto della Dll che poi referenzio in questo programma.

4) Sinceramente, se c'è una perfetta integrazione tra i due linguaggi, mia personalissima opinione, non vedo perchè non utilizzarla laddove possa semplificare qualcosa.

5) MA NON MENO IMPORTANTE ... Io NON sono un programmatore (anche se ce la sto mettendo tutta per diventarlo )

RaouL.
__________________
Dai wafer di silicio nasce: LoHacker... il primo biscotto Geek

Ultima modifica di RaouL_BennetH : 28-09-2009 alle 21:16.
RaouL_BennetH è offline   Rispondi citando il messaggio o parte di esso
Old 28-09-2009, 22:16   #13
||ElChE||88
Senior Member
 
Iscritto dal: Dec 2003
Messaggi: 4908
Quote:
Originariamente inviato da MarcoGG Guarda i messaggi
No, no, non mi faccio tirare un'altra volta in una discussione di questo genere.
...
Che piaccia o no, DateAndTime fornisce molte funzioni comodissime, con buona pace degli integralisti del C#.
Boh, ero curioso di sapere quali sono queste funzioni comodissime.
Lo sapete, vero, che con DateTime e TimeSpan si può usare operatori come - e +?
||ElChE||88 è offline   Rispondi citando il messaggio o parte di esso
Old 29-09-2009, 08:07   #14
MarcoGG
Senior Member
 
L'Avatar di MarcoGG
 
Iscritto dal: Dec 2004
Messaggi: 3210
Quote:
Originariamente inviato da RaouL_BennetH Guarda i messaggi
No, non è che perdo le formule, cioè:

L'esportazione dei dati avviene correttamente, soltanto, cercavo un modo per dire ad excel di copiarsi le stesse formule contenute nel report viewer in modo da semplificare la vita all'utente una volta esportati i dati e non costringerlo a rifarsele nelle celle di pertinenza..
Non sono sicuro di aver capito il problema, comunque sia, se usi i Rif. COM l'inserimento di una Formula in una cella è semplice :
Codice:
        Dim appExcel As New Excel.Application

        Dim WB As Excel.Workbook = appExcel.Workbooks.Open(percorso & nomeFile)
        Dim WS As Excel.Worksheet = WB.Worksheets("Foglio1")
        WS.Select()

        'Scrittura di una Formula
        WS.Range("C1").Formula = "=SOMMA(A1;B1)"
Mentre se usi i Rif. .NET è comunque molto simile :
Dim appExcel As New Microsoft.Office.Interop.Excel.Application

Codice:
        Dim WB As Microsoft.Office.Interop.Excel.Workbook = appExcel.Workbooks.Open(percorso & nomeFile)
        Dim WS As Microsoft.Office.Interop.Excel.Worksheet = WB.Worksheets("Foglio1")
        WS.Select()

        'Scrittura di una Formula
        WS.Range("C1").Formula = "=SOMMA(A1;B1)"
Quote:
Originariamente inviato da RaouL_BennetH Guarda i messaggi
4) Sinceramente, se c'è una perfetta integrazione tra i due linguaggi, mia personalissima opinione, non vedo perchè non utilizzarla laddove possa semplificare qualcosa.
Già.

Quote:
Originariamente inviato da ||ElChE||88 Guarda i messaggi
Lo sapete, vero, che con DateTime e TimeSpan si può usare operatori come - e +?
Direi proprio di sì :
http://www.hwupgrade.it/forum/showpo...83&postcount=6
MarcoGG è offline   Rispondi citando il messaggio o parte di esso
Old 29-09-2009, 11:30   #15
RaouL_BennetH
Senior Member
 
L'Avatar di RaouL_BennetH
 
Iscritto dal: Sep 2004
Messaggi: 3967
Quote:
Originariamente inviato da MarcoGG Guarda i messaggi
Non sono sicuro di aver capito il problema
>cut<
E' che io l'ho spiegato molto male

Il fatto è che il report che viene generato, non ha un numero di colonne prefissato, quindi, non ho modo di assegnare formule perchè non so a monte la posizione delle celle che dovrebbero 'ospitarla'
__________________
Dai wafer di silicio nasce: LoHacker... il primo biscotto Geek
RaouL_BennetH è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Star Wars Zero Company è l'erede di XCOM 2 Star Wars Zero Company è l'erede di XCOM ...
Test ride Can-Am Origin: la moto elettrica che fa dimenticare il motore a scoppio (ma occhio all'autonomia) Test ride Can-Am Origin: la moto elettrica che f...
Logitech G325, G305 e G316 X: il tris per chi non vuole rinunciare a nulla, spendendo poco Logitech G325, G305 e G316 X: il tris per chi no...
Recensione POCO F9 pro: potenza da vero top di gamma, display da 185 Hz e finalmente una fotocamera da prendere sul serio Recensione POCO F9 pro: potenza da vero top di g...
Tra audio e AI: la ricetta di Qualcomm per l'agentic AI Tra audio e AI: la ricetta di Qualcomm per l'age...
ESA e ClearSpace svilupperanno un satell...
Oracle, stock option da quasi un miliard...
Starship: si è conclusa anticipat...
Un computer quantistico ha funzionato ne...
Sovranità sui dati: AWS è ...
Il nuovo nome della distro Linux mobile ...
Due ventole da 220 mm e non solo: Cooler...
Truffa telefonica via Google Ads: il bro...
Google pensiona le Gems di Gemini: cosa ...
Flight 14: incertezza per un problema a ...
C'è un problema con i robot Tesla: i dip...
Raggi gamma anomali dalla Via Lattea sve...
NIO vende il 30% della divisione scambio...
Sony brevetta un DualSense capace di acc...
Un volto per l'assistenza IA: cosa pu&og...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 21:05.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v