dan64100 Inserito: 2 gennaio 2015 Segnala Inserito: 2 gennaio 2015 Innanzitutto buon anno a tutti !!! Abuso di questo forum per il solito annuncio. Come da oggetto ho pubblicato Snap7 1.3.0 Platform e Comfort release. Platform Supporto automatico per architetture big/little endian, il detect viene fatto a runtime per cui non sono necessari switch di compilazione. Da questo momento ovunque gira Unix (Linux/BSD etc.) e c'è un'adattatore ethernet virtualmente gira anche Snap7. Supporto per Sun Sparc e Mips Ottimizzata la gestione di Solaris Testato su Arduino YUN (OpenWRT) Test estesi (build e run) su Windows 10 (32/64) Supportato Ubuntu 14.10 (32/64) Kernel 3.17 Comfort Aggiunte classi/funzioni helper per la lettura di variabili tipizzate (.NET/C++/Pascal) Aggiunti esempi Winform .NET (C# e VB) per Visual Studio 2010+ Aggiunto progetto Visual Studio per la compilazione di snap7.net.dll (per agevolare gli utenti VB) Aggiunto esempio WinForm "misto" VB+C# per compilare snap7.net.dll nella stessa soluzione del programma VB e gestire al volo framework/architettura. Aggiunto nella documentazione (anche online) un capitolo .NET per approfondire le procedure di interfacciamento contenente anche due esempi (C# e VB) su come leggere una struct del PLC in una .NET. Aggiunto nella documentazione un capitolo sul formato dati (big-endian) del PLC per risolvere il mistero ( ) dei dati sbagliati in lettura. Un piccolo bugfix : MultiRead con numero di item dispari dava problemi sull'ultimo item con S7400. Un paio ottimizzazioni: Migliorato il supporto MultiRead/MultiWrite per .NET Verifica di Client connesso prima di ogni operazione. Potete tranquillamente ricoprire snap7.dll che usate attualmente con la 1.3.0, sono compatibili al 100% Come sempre buon divertimento Davide Nardella
drugo66 Inserita: 2 gennaio 2015 Segnala Inserita: 2 gennaio 2015 ... e come sempre Grazie !! Vado subito a scaricarmelo !!
bigalex Inserita: 2 gennaio 2015 Segnala Inserita: 2 gennaio 2015 Grazie per la tua consueta generosità ed esemplare professionalità . Buon 2015 !!! bigalex
Frank681 Inserita: 22 gennaio 2015 Segnala Inserita: 22 gennaio 2015 Mi associo Complimenti per la qualità del lavoro svolto e sopratutto per la condivisione con il forum Frank :thumb_yello:
Paolo GUerrieri Inserita: 17 febbraio 2015 Segnala Inserita: 17 febbraio 2015 Buongiorno Davide, ho appena scaricato la nuova release della tua dll, ma in questo punto mi visualizza l'errore riportato di seguito.... [DllImport(S7Consts.Snap7LibName)] protected static extern IntPtr Cli_Create(); public S7Client() { Client = Cli_Create(); } Errore: "Tentativo di caricare un programma con un formato non corretto. (Eccezione da HRESULT: 0x8007000B) se rimetto la dll precedente funziona tutto Cosa sto sbagliando? Saluti Paolo Mi autorispondo....sono un pistola ....avevo preso la versione 64bit CHIEDO SCUSA!!!
dan64100 Inserita: 18 febbraio 2015 Autore Segnala Inserita: 18 febbraio 2015 Figurati, capita anche a me quelle poche volte che uso C# Purtroppo quello del formato delle DLL esterne (32/64) è un problema annoso per .NET. Non c'è modo di sapere in anticipo il formato dell'eseguibile se si usa (come è giusto che sia) AnyCPU. L'unico modo, molto intrusivo, sarebbe quello di avere due DLL tipo snap7_32.dll e snap7_64.dll e poi a runtime caricare con LoadLibrary quella giusta andando a controllare quanti byte occupa IntPtr. Si tratterebbe di rimappare oltre un centinaio di metodi e non so se lo farò mai (per ora no di sicuro) Se qualcuno conosce un metodo più intelligente ... sarebbe gradito
Messaggi consigliati
Crea un account o accedi per commentare
Devi essere un utente per poter lasciare un commento
Crea un account
Registrati per un nuovo account nella nostra comunità. è facile!
Registra un nuovo accountAccedi
Hai già un account? Accedi qui.
Accedi ora