首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用powershell脚本自动登录SAP GUI

使用powershell脚本自动登录SAP GUI
EN

Stack Overflow用户
提问于 2021-03-29 14:44:37
回答 1查看 650关注 0票数 0

我正在尝试编写一个脚本,通过SAP GUI自动登录到SAP系统。我希望使用下面的脚本自动填充SAP GUI字段。

你能告诉我,我是不是走对了路?我怎么才能让它工作呢?

代码语言:javascript
复制
#-Begin-----------------------------------------------------------------

 #-Includes------------------------------------------------------------
    ."$PSScriptRoot\COM.ps1"

  $hWSH = Create-Object "Wscript.Shell"

  $hWSH.Popup("testmessage", 2, "goto", 1)
  
  Free-Object $hWSH

  #-Signatures----------------------------------------------------------
    $Sig = @'
[DllImport("user32.dll", CharSet = CharSet.Auto)]
public static extern IntPtr FindWindow(string lpClassName, string lpWindowName);
'@

  # FindWindow function---------------------------------------------
    $Win32 = Add-Type -Namespace Win32 -Name Funcs -MemberDefinition $Sig -PassThru

  #-Set the path to the SAP GUI directory-------------------------------
    $SAPGUIPath = "C:\Program Files (x86)\SAP\FrontEnd\SAPgui\"

  # SAP system ID-----------------------------------------------
    $SID = "test.lan"

  #instance number of the SAP system---------------------------
    $InstanceNo = "10"

  #-Start  SAP GUI---------------------------------------------------
    $SAPGUI = $SAPGUIPath + "sapgui.exe"
    & $SAPGUI $SID $InstanceNo

  #-Wait until the session is available---------------------------------
    While ($Win32::FindWindow("SAP_FRONTEND_SESSION", "SAP") -eq 0) {
      Start-Sleep -Milliseconds 250
    }

  #-Logon to SAP --------------------------------------------
    
    
   
    $user="test"

    
    $SAPGUI.document.getElementById("Benutzer").value= "$user" 
    $SAPGUI.document.getElementById("loginform").submit()
代码语言:javascript
复制
EN

回答 1

Stack Overflow用户

发布于 2021-03-29 15:14:46

您可以使用SAP快捷方式:

代码语言:javascript
复制
cd "c:\Program Files (x86)\SAP\FrontEnd\SAPgui\"
sapshcut -guiparm="[hostname] [installation number]" -system=[system id] -client=[client] -user=[user name] -pw=[password]

将参数(方括号)替换为适当的值。当您第一次执行此命令(针对一组特定的参数)时,您将看到一个确认弹出窗口,但您可以在以后自动登录时禁用该对话框。如果系统ID是在SAPlogon中创建的,则可以省略参数-guiparm=“主机名”。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66849710

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档