Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    Creare un tipo Date in C++

    Sto facendo un oggetto COM in C++ che dovrà essere usato in VB.

    Devo fare una funzione (in C++) che restituisca una data (il tipo Date di VB), qualcuno sa come si procede...

  2. #2
    Devi restituire un double la cui parte intera siano i giorni trascorsi dal 1 gennaio 1900, dove 1.0 rappresenta la mezzanotte del primo gennaio 1900, e la parte decimale rappresenta la frazione di un giorno, ad esempio 1.5 rappresenta mezzogiorno del 1 genn. 1900.

    esempio

    codice:
    double __stdcall tempoUTC() 
    {
    	time_t t = time(NULL);	
    	return (double)(25569 + t / 86400) + (double)(t % 86400) / 86400.0;
    
    }
    
    
    double __stdcall tempoLoc() 
    {
    	time_t now = time(NULL);
    	struct tm* t = localtime(&now);	
    	return (double)
                (1 + t->tm_year * 365 + 
                     (t->tm_year + 4)/ 4 - 
                     (t->tm_year) / 100 + 
                     (t->tm_year + 300) / 400 + 
                     t->tm_yday
                ) + 
                   (double)
                (t->tm_hour * 3600 + t->tm_min*60+t->tm_sec) / 86400.0;
    
    }
    VB
    codice:
    Private Declare Function tempoUTC Lib "VbLib" () As Date
    Private Declare Function tempoLoc Lib "VbLib" () As Date

  3. #3
    Pardon, stai facendo una DLL COM, allora nel IDL metti il tipo DATE come valore di ritorno, il codice C++ (preso in prestito dal C) resta invariato, a parte che non saranno funzioni ma metodi di classe.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.