我想在VBScript中生成GUID字符串。我知道VBScript中沒有內置函數來生成一個函數。我不想使用隨機生成的GUID。也許有一個可以使用CreateObject()創建的ActiveX對象,肯定會安裝在可以生成GUID的(新版本)Windows版本上?如何在VBScript中生成GUID?
28
A
回答
28
How Can I Create a GUID Using a Script? (in: Hey, Scripting Guy! Blog)這樣說:
Set TypeLib = CreateObject("Scriptlet.TypeLib")
Wscript.Echo TypeLib.Guid
但是,請注意Scriptlet.TypeLib.Guid返回null結尾的字符串,這可能會導致一些事情要ignore everything after the GUID。爲了解決這個問題,您可能需要使用:
Set TypeLib = CreateObject("Scriptlet.TypeLib")
myGuid = TypeLib.Guid
myGuid = Left(myGuid, Len(myGuid)-2)
Wscript.Echo myGuid
2
Set tlib = Server.CreateObject("Scriptlet.TypeLib")
strGuid = tlib.Guid
41
Function CreateGUID
Dim TypeLib
Set TypeLib = CreateObject("Scriptlet.TypeLib")
CreateGUID = Mid(TypeLib.Guid, 2, 36)
End Function
這個函數會返回一個普通的GUID,例如47BC69BD-06A5-4617-B730-B644DBCD40A9
。
如果你想在一個註冊表格式的GUID,例如,{47BC69BD-06A5-4617-B730-B644DBCD40A9}
,函數的最後一行改爲
CreateGUID = Left(TypeLib.Guid, 38)
8
' Returns a unique Guid on every call. Removes any cruft.
Function CreateGuid()
CreateGuid = Left(CreateObject("Scriptlet.TypeLib").Guid,38)
End Function
相關問題
- 1. 如何在.NET中生成1版Guid?
- 2. 如何在Oracle中生成GUID?
- 3. 如何在hibernate中按需生成GUID?
- 4. 如何在Vim中生成GUID?
- 5. 在SQL Server中如何生成GUID?
- 6. Guid在C中生成bug#
- 7. 在KRL中生成GUID/UUID
- 8. 如何在Windows Mobile下生成GUID?
- 9. 生成GUID
- 10. GUID生成
- 11. 自動生成GUID在SaveChanges()
- 12. 如何爲字符串生成GUID?
- 13. 如何生成順序的GUID?
- 14. 在AIR 3中生成一個GUID?
- 15. 在Sybase中自動生成GUID
- 16. 在C#中生成所需的GUID
- 17. 如何在存儲過程中生成新的Guid?
- 18. 如何在SQLITE中生成唯一的GUID 36字符iPhone
- 19. 如何在實體框架中有條件地生成DatabaseGenerated GUID
- 20. 在vbscript中生成校驗和
- 21. 不生成唯一的GUID
- 22. ABAP生成隨機UUID/GUID
- 23. 從Guid生成顏色
- 24. WIX自動生成GUID *?
- 25. 生成的GUID主鍵EF5
- 26. 如何從C#或T-Sql中的給定GUID生成新的GUID?
- 27. 如何在傳統ASP中使用VBScript生成MD5?
- 28. T-SQL中的確定性GUID生成
- 29. 如何從SHA-1字節數組中生成Guid?
- 30. 如何確保生成的GUID在全球獨一無二?
我想接受的答案具有低得多的質量比[最高投一個( http://stackoverflow.com/a/968790/2932052)。也許有理由重新考慮你的決定? – Wolf 2016-12-07 08:47:23