查看: 1973|回复: 2

[有事请教] GetUserName与GetUserNameA的关系

[复制链接]
梦石
0
星屑
65
在线时间
1089 小时
注册时间
2010-7-31
回帖
39
发表于 2012-6-9 19:05:40 | 显示全部楼层 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有账号?注册会员

×
[pre lang="VB.net" line="1"]Public Class Form1
    Public Declare Function GetUserNameA Lib "advapi32.dll" (ByVal lpBuffer As String, ByRef nSize As Integer) As Integer
    Dim iReturn As Integer
    Dim userName As String

    Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        
        userName = Space(100)
        iReturn = GetUserNameA(userName, 50)
        Label1.Text = userName
    End Sub
End Class[/pre]
如果把[pre lang="VB.net" line="1"]Public Declare Function GetUserNameA Lib "advapi32.dll" (ByVal lpBuffer As String, ByRef nSize As Integer) As Integer[/pre]改为[pre lang="VB.net" line="1"]Public Declare Function GetUserName Lib "advapi32.dll" (ByVal lpBuffer As String, ByRef nSize As Integer) As Integer[/pre]却不能获取当前登陆用户的名称,而且不报错。

点评

0 .0触手么  发表于 2012-6-9 19:06
梦石
0
星屑
120
在线时间
5250 小时
注册时间
2011-10-7
回帖
1769

开拓者贵宾

发表于 2012-6-9 19:26:04 | 显示全部楼层
一般来说,带A的是ANSI编码的版本……

评分

参与人数 1星屑 +12 收起 理由
酱爆 + 12 认可答案

查看全部评分

回复

使用道具 举报

Fuzzy Ginkgo

梦石
0
星屑
61105
在线时间
1933 小时
注册时间
2010-6-26
回帖
1535

烫烫烫开拓者

发表于 2012-6-9 19:58:04 | 显示全部楼层
话说 vb.net 里面根本不需要 api 吧。请相信这是 vb.net,运行库提供了 System.Environment.UserName 这个

评分

参与人数 1星屑 +12 收起 理由
酱爆 + 12 精品文章

查看全部评分

我的言论只代表我个人的观点,不代表雇主及/或任何第三方的立场。
Opinions expressed are solely my own and do not express the views or opinions of my employer and/or any third parties.
捐赠 | GitHub
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部