UserName を取得しようとしており、以下のコードを使用してこれを取得しています。ボタンから関数を呼び出すと、子犬ウィンドウに正しいユーザー名が表示されることに注意してください。
<body onload = "GetUserName();">
<script language="javascript" type="text/javascript">
function GetUserName() {
var WinNetwork = new ActiveXObject("WScript.Network");
//alert(WinNetwork.UserName);
var userName = WinNetwork.UserName;
//var userName = 'test';
document.getElementById('label1').innerHTML = userName;
}
</script>
<form runat="server">
<asp:HiddenField ID="hfUserName" runat="server" value="a"/>
<asp:PlaceHolder ID="phLabelUser" runat="server"></asp:PlaceHolder>
コードビハインドでは、それを表示するラベルを作成しますが、意図は隠しコントローラーを使用することです
Label label= new Label();
label.ID = "lbl1";
label.Text = "test -> " + hfUserName.Value;
phLabelUser.Controls.Add(label);
IE で次の設定を有効にしたため、サイトがイントラネット上にあるため、セキュリティ上の問題はありません。
Run ActiveX controls and plug-ins
Initialize and script ActiveX controls not marked as safe.
これによりデバッガでエラーが発生するのはなぜですか?
「Microsoft JScript ランタイム エラー: オートメーション サーバーはオブジェクトを作成できません」