Domanda

Sto creando un GUID da utilizzare in un'applicazione ASP classica, usando TypeLib. Tuttavia, anche un semplice test come la scrittura del GUID sullo schermo mi sta dando problemi: stampa il GUID ma ignora tutto dopo di esso (ad esempio tag HTML, parole aggiuntive, qualsiasi cosa).

Ecco il codice rudimentale per testare questo:

Set typeLib = Server.CreateObject("Scriptlet.TypeLib")
myGuid = typeLib.Guid
Response.Write myGuid & " is the new GUID"
Set typeLib = Nothing

Questo mostrerà qualcosa come {9DDB27D1-F034-41D7-BB88-D0D811DB91CE} e basta; il resto del testo viene ignorato e non viene scritto. Tuttavia, se codifico il valore GUID e lo faccio riferimento da una variabile, il resto del testo appare bene. Ho provato la conversione esplicita in un valore String prima della visualizzazione, ma succede ancora.

È stato utile?

Soluzione

Mi sembra di aver risolto il mio problema .. stava aggiungendo qualcosa in più al testo, quindi ho dovuto fare:

myGuid = Left(myGuid, Len(myGuid)-2)

e ora emette bene. Strano.

Altri suggerimenti

Uso qualcosa del genere

Function GetGuid() 
        Set TypeLib = CreateObject("Scriptlet.TypeLib") 
        GetGuid = Left(CStr(TypeLib.Guid), 38) 
        Set TypeLib = Nothing 
End Function 

Aggiunge un vbNullChar o Chr (0) alla fine del GUID. Sostituisci (myGuid, Chr (0), " ") lo risolverà. Meglio che usare le funzioni Left o Mid.

GUID è una struttura e non una stringa, è necessario aggiungere un metodo ToString () per emetterlo come stringa.

https://msdn.microsoft. com / it-iT / library / 97af8hh4 (v = vs.110) aspx

Response.Write myGuid.ToString("D")
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top