Vista 上的 VB.NET,尝试获取日期(今天)导致安全异常

标签 vb.net security date

我有一个 VB6 程序,最近有人帮我转换为 VB.NET

在程序中,保存文件时,我用通过调用 Today() 函数获取的日期来标记它们。

当我尝试在 Vista 中运行新的 VB.NET 代码时,它会抛出 Today() 的权限异常。如果我在管理模式下运行 Visual Studio Express(这是 2008 Express 版本),则不会出现问题,但显然我希望最终得到一个独立的程序,该程序可以为所有没有特殊权限的用户运行。

那么 Vista 中的普通 VB.NET 程序如何获取今天的日期呢?

最佳答案

使用DateTime.NowDateTime.Today。这些是完全托管的,不应引发安全异常。

旧的 VB6 函数,例如 Len()Left()Right()OpenFile()FreeFile() 都存在于 .NET Framework 的 Microsoft.VisualBasic DLL 中。为了保持向后兼容性,它们都在非托管代码中调用旧函数。非托管代码需要特殊的安全权限,因为它可能很危险。

只要有可能,请尝试使用较新的 .NET 函数。它们通常更快(例如使用 Streams 的文件 IO)并且更安全。

关于Vista 上的 VB.NET,尝试获取日期(今天)导致安全异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64469/

相关文章:

php - 在 siteurl 上测试 wordpress 站点的 SQL 注入(inject)

MySQL 查询显示下个月内的所有小时

excel - 当另一个单元格的值发生变化时(通过公式计算),单元格中的日期自动更新

vb.net - 如何在 Visual Studio 中更改菜单栏文本的前景色?

vb.net - 如何将自定义文本文件添加到 Visual Studio 项目?

vb.net - 将选项严格关闭代码转换为选项严格开启的工具?

javascript - Sequelize 年龄验证(从出生日期开始)

c# - 有什么理由立即使用 await 和 async 吗?

database - 保护数据库访问凭证的安全

api - 移动后端API key 的安全性