如何使用Powershell授予Windows应用程序或可执行文件以使用您的网络配置文件?

时间:2019-03-15 18:28:18

标签: powershell cmd

Powershell新手在这里。我正在学习Powershell(是的,这些年来我一直忽略它),因为我从来不需要我的这一特殊需求。我看过PS教程网站,当然也查看过StackOverflow以获得任何提示。看来我的需求是独一无二的。

简短的故事,如何在本地计算机上执行应用程序(例如notepad.exe)以打开网络共享文件,但是本地计算机具有通用的登录用户,但是网络共享需要特权用户(像我的)打开文件。我希望应用程序/可执行文件继承我的凭据,但不设置本地计算机本身。我想运行本地应用程序/可执行文件,就像我使用凭据登录本地计算机一样。

我读过PS可以做到这一点,所以我一直在尝试Powershell命令行:

package:
  name: my-package
  version: "0.2.dev"

source:
  path: .

build:
  number: {{ environ.get('BUILD_NUMBER', 0) }}
  script: python setup.py install --single-version-externally-managed --record=record.txt
  include_recipe: False
  preserve_egg_dir: True

requirements:
  build:
    - python
    - cython
  run:
    - python
    - numpy
    - pyyaml
    - matplotlib

我从Powershell命令行收到错误提示:

  

start-process:由于以下错误,无法运行此命令:   系统找不到指定的文件。在第1行:char:1   +开始进程“ [SOME APP] .exe” -FilePath“ [\ DIRECTORY \ PATH \ WHERE \ APP \ IS \ LOCATED] ...   + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~       + CategoryInfo:InvalidOperation :( :) [开始进程],InvalidOp erationException       + FullyQualifiedErrorId:InvalidOperationException,Microsoft.PowerShell.C
  ommands.StartProcessCommand

我计划在LabVIEW可执行文件中使用此Powershell脚本为我自己的网络登录特权分配VI(虚拟仪器)可执行文件,以往返于文件或修改网络共享中的文本文件。

感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

您可以执行以下操作。您需要做的就是将$app变量更改为所需的可执行文件,并将脚本另存为PS1文件。有人可以通过右键单击并选择“使用PowerShell运行”或打开PowerShell控制台并键入path\scriptname.ps1来运行它。

$App = "c:\windows\system32\notepad.exe"
$Credentials = Get-Credential
$WorkingDir = Split-Path $app
$Exe = Split-Path $app -Leaf
Start-Process -FilePath $Exe -WorkingDirectory $WorkingDir -credential $Credentials