Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
C# / VB.NET - Problema lettura stringa json
Forum - C# / VB.NET - Problema lettura stringa json - Pagina 3

Pagine: [ 1 2 3 ] Precedente | Prossimo
Avatar
Carlo (Member)
Guru^2


Messaggi: 1420
Iscritto: 29/01/2018

Segnala al moderatore
Postato alle 20:15
Sabato, 01/06/2024
vedo che accendiamo i pc agli stessi orari, mentre scrivevi ti ho postato il codice convertito in C++ da ChatGPT e funziona!!!

EDIT: provato anche su CPU i9s12 e Win11, compilato in C con routine IndexOf e Substring personali 20ms, compilato in C++ con .substr e .find 10ms.

Immagine allegata.

DEVE funzionare.


Carlo ha allegato un file: Json.jpg (174997 bytes)
Clicca qui per guardare l'immagine

Ultima modifica effettuata da Carlo il 01/06/2024 alle 20:44


in programmazione tutto è permesso
PM Quote
Avatar
Carlo (Member)
Guru^2


Messaggi: 1420
Iscritto: 29/01/2018

Segnala al moderatore
Postato alle 21:52
Sabato, 01/06/2024
Così tanto per provare ho creato una DLL che legge un file Json e restituisce gli id e i name

Ho provato come si usa in C++ e funziona:

Codice sorgente - presumibilmente C++

  1. #include <iostream>
  2. #include <Windows.h>
  3.  
  4. typedef const char* (*ReadJsonFileFunc)(const char*);
  5.  
  6. int main() {
  7.     // Carica la DLL
  8.     // la DLL deve esistere nel percorso dell'eseguibile o del progetto se in fase di debug
  9.     HINSTANCE hInstLibrary = LoadLibrary("JsonNameReader.dll");
  10.     if (!hInstLibrary) {
  11.         std::cerr << "Could not load the DLL" << std::endl;
  12.         return -1;
  13.     }
  14.  
  15.     // Ottieni l'indirizzo della funzione esportata
  16.     ReadJsonFileFunc ReadJsonFile = (ReadJsonFileFunc)GetProcAddress(hInstLibrary, "ReadJsonFile");
  17.     if (!ReadJsonFile) {
  18.         std::cerr << "Could not locate the function" << std::endl;
  19.         FreeLibrary(hInstLibrary);
  20.         return -1;
  21.     }
  22.  
  23.     // Chiama la funzione della DLL
  24.     const char* result = ReadJsonFile("file.json"); // il percorso completo di nome del tuo file
  25.     std::cout << result << std::endl;
  26.  
  27.     // Libera la DLL
  28.     FreeLibrary(hInstLibrary);
  29.  
  30.     return 0;
  31. }



Nello zip libreria dinamica .dll e statica .a https://www.dropbox.com/scl/fi/f2vkhfdi73d0yxk14ir5c/JasonN ...

L'esempio è per la dll che deve esistere nel percorso dell'eseguibile o nel percorso del progetto quando si è in programmazione.

Se hai voglia di provarla... siamo a 5ms. vedi foto

Ps.
Il codice che hai postato in C++ a me funziona, il problema che hai è sconosciuto.


Carlo ha allegato un file: JsonDLL.jpg (157179 bytes)
Clicca qui per guardare l'immagine

Ultima modifica effettuata da Carlo il 01/06/2024 alle 21:58


in programmazione tutto è permesso
PM Quote
Avatar
Thejuster (Admin)
Guru^2


Messaggi: 2338
Iscritto: 04/05/2008

Segnala al moderatore
Postato alle 9:13
Domenica, 02/06/2024
ok grazie carlo.
faccio dei tentativi :k:


https://mire.forumfree.it/ - Mire Engine
C# UI Designer
PM Quote
Avatar
Thejuster (Admin)
Guru^2


Messaggi: 2338
Iscritto: 04/05/2008

Segnala al moderatore
Postato alle 12:13
Domenica, 02/06/2024
Apposto carlo funziona ty.
Non saprei dirti.
Il codice è quello cambia poco ma siamo li.
forse ho un problema io da qualche parte nel progetto devo controllare meglio.


Thejuster ha allegato un file: Screenshot 2024-06-02 121205.png (100640 bytes)
Clicca qui per guardare l'immagine


https://mire.forumfree.it/ - Mire Engine
C# UI Designer
PM Quote
Avatar
Carlo (Member)
Guru^2


Messaggi: 1420
Iscritto: 29/01/2018

Segnala al moderatore
Postato alle 13:13
Domenica, 02/06/2024
Bello, già avevo visto il progetto a cui stai lavorando, ma non ho competenze per intervenire.

Hai usato la DLL?

Ti ringrazio per avermi spinto a dare un'occhiata al C++


in programmazione tutto è permesso
PM Quote
Pagine: [ 1 2 3 ] Precedente | Prossimo