首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >在构建和打包后,如何在我的电子应用程序中引用我的powershell脚本?

在构建和打包后,如何在我的电子应用程序中引用我的powershell脚本?
EN

Stack Overflow用户
提问于 2018-07-02 21:22:48
回答 1查看 3.5K关注 0票数 4

我已经做了一个电子申请,主要是为我的服务台同事在工作。

它所做的(上下文):

它提供了一个简单的gui,它可以完成不同的“任务”。示例:

为此,我使用了以下几种组合:

  • 带电子节点
  • 反应
  • 节点-Powershell

问题:

当我在开发模式下运行它时,这个应用程序正在按它应该运行的方式运行。但是在我用电子构建和封装它之后,NPM包node-powershell再也找不到.ps1脚本了。我想我已经找出了问题,但我不知道解决这个问题的办法是什么。node-powershell需要一个脚本路径和一个命令数组。我把它设成这样:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
    const p1 = require('path').resolve();
    const scriptPath = require('path').join(p1, 'src/PowershellScripts/AddMailboxPermissions.ps1');

然后是ps.addCommand(scriptPath, commands); (节点-powershell)

如前所述,这在webpack服务器的开发模式中工作得很好,但是在打包后运行时,我会得到以下错误:

找不到C:\Users\Huberdo\Projekte\Powershell-SAS-App\Client\builds\basic-electron-react-boilerplate-win32-x64\src\PowershellScripts\GetRemoteMac.ps1。

原因是包装有如下的结构。.ps1文件现在有以下路径:

C:\Users\Huberdo\Projekte\Powershell-SAS-App\Client\builds\basic-electron-react-boilerplate-win32-x64\resources\app\src\PowershellScripts

所以这是主要的问题。我如何包装这个“正确的方式”,使它实际上是工作之后。

信息:

  • 我在windows 10 x64机器上运行这个
  • package.json脚本:
    • "dev": "webpack-dev-server --hot --host 0.0.0.0 --config=./webpack.dev.config.js", "build": "webpack --config webpack.build.config.js", "package": "webpack --config webpack.build.config.js",

  • 当我在dev模式下运行它时,它解析出正确的路径,并且一切都正常。

我希望你们中的一些人能帮助我或引导我走向正确的方向。

可能的想法:

引用一个完全不同的路径,并将ps1文件复制到另一个具有gulp任务的目录中?从来没用过。这是一种可能的解决办法吗?如果是,如何最好地处理这个问题?

更新当我将src文件夹从C:\Users\Huberdo\Projekte\Powershell-SAS-App\Client\builds\basic-electron-react-boilerplate-win32-x64\resources\app复制到根C:\Users\Huberdo\Projekte\Powershell-SAS-App\Client\builds\basic-electron-react-boilerplate-win32-x64时,它再次工作。所以这主要是一个路径问题,我不知道如何解决。

最后但并非最不重要的是与github项目的直接链接:

https://github.com/dhuber666/Powershell-SAS-Tool

在这里,我调用ps1脚本:

https://github.com/dhuber666/Powershell-SAS-Tool/blob/SendAs/src/components/scriptsComponents/AddMailboxPermissions.js

!谢谢!

EN

回答 1

Stack Overflow用户

发布于 2018-07-09 17:29:55

我正在做类似的事情,但是我为PowerShell脚本使用的方法是将它们创建为PowerShell模块。然后,只需将它们放置在有效的PSModule位置之一,就可以了。您只需编写一个powershell脚本,将模块复制到正确的位置,并将包复制到桌面或任何需要的位置。

一个非常简单的模块可以是这样的:

在Files\WindowsPowerShell\Modules C:\中,创建一个名为MyModuleTest的文件夹。在此文件夹中创建一个名为MyModuleTest.psm1.的文件在这个PSM1文件中创建一个函数。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
function Invoke-MyModuleTest {

Write-host "This is My Module"

}

保存文件,打开powershell控制台会话,然后运行Invoke-MyModuleTest,它将输出到控制台。

您可以阅读更多关于模块这里的信息。

您还可以找到一些更复杂的模块这里的好例子。

一旦您将脚本转换为模块,您就可以像调用任何cmdlet一样调用它们,我目前没有任何可以共享的内容。

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

https://stackoverflow.com/questions/51147152

复制
相关文章
使用VBA删除工作表多列中的重复行
自Excel 2010发布以来,已经具备删除工作表中重复行的功能,如下图1所示,即功能区“数据”选项卡“数据工具——删除重复值”。
fanjy
2022/11/16
11.4K0
使用VBA删除工作表多列中的重复行
SQL中的行转列和列转行
SQL是IT行业很多岗位都要求具备的一项能力,对于数据岗位而言更是如此,甚至说扎实的SQL基础也往往是入职这些岗位的必备技能。而在SQL面试中,一道出镜频率很高的题目就是行转列和列转行的问题,可以说这也是一道经典的SQL题目,本文就这一问题做以介绍分享。
luanhz
2021/06/25
7.2K0
SQL 中的行转列和列转行
行转列,列转行是我们在开发过程中经常碰到的问题。行转列一般通过CASE WHEN 语句来实现,也可以通过 SQL SERVER 的运算符PIVOT来实现。用传统的方法,比较好理解。层次清晰,而且比较习惯。 但是PIVOT 、UNPIVOT提供的语法比一系列复杂的SELECT…CASE 语句中所指定的语法更简单、更具可读性。下面我们通过几个简单的例子来介绍一下列转行、行转列问题。
玖柒的小窝
2021/11/08
5.5K0
SQL 中的行转列和列转行
如何生成A-AZ列 excel表的列 不用序号的那种?
前几天在Python最强王者交流群【逸】问了一个Pyhton处理Excel的问题,这里拿出来给大家分享下。
前端皮皮
2022/12/19
1.7K0
如何生成A-AZ列 excel表的列 不用序号的那种?
Excel应用实践16:搜索工作表指定列范围中的数据并将其复制到另一个工作表中
“在工作表Sheet1中存储着数据,现在想要在该工作表的第O列至第T列中搜索指定的数据,如果发现,则将该数据所在行复制到工作表Sheet2中。
fanjy
2019/07/19
6.1K0
如何使用python连接MySQL表的列值?
MySQL 是一个开源关系数据库管理系统,广泛用于存储、管理和组织数据。使用 MySQL 表时,通常需要将多个列值组合成一个字符串以进行报告和分析。Python是一种高级编程语言,提供了多个库,可以连接到MySQL数据库和执行SQL查询。
很酷的站长
2023/08/11
2450
如何使用python连接MySQL表的列值?
MySQL中的锁(表锁、行锁)
锁是计算机协调多个进程或纯线程并发访问某一资源的机制。在数据库中,除传统的计算资源(CPU、RAM、I/O)的争用以外,数据也是一种供许多用户共享的资源。如何保证数据并发访问的一致性、有效性是所在有数据库必须解决的一个问题,锁冲突也是影响数据库并发访问性能的一个重要因素。从这个角度来说,锁对数据库而言显得尤其重要,也更加复杂。
用户1205080
2019/03/19
5.1K0
MySQL中的锁(表锁、行锁)
锁是计算机协调多个进程或纯线程并发访问某一资源的机制。在数据库中,除传统的计算资源(CPU、RAM、I/O)的争用以外,数据也是一种供许多用户共享的资源。如何保证数据并发访问的一致性、有效性是所在有数据库必须解决的一个问题,锁冲突也是影响数据库并发访问性能的一个重要因素。从这个角度来说,锁对数据库而言显得尤其重要,也更加复杂。
星哥玩云
2022/08/17
4.9K0
如何隐藏table 中的指定列?
如何隐藏table 中的指定列?当页面需要显示的内容太多,而页面宽度又不够,不想内容显示太混乱,常常会将指定的列暂时隐藏掉,那么如何让实现呢?
爱明依
2019/03/12
6.9K0
Excel中两列(表)数据对比的常用方法
Excel中两列数据的差异对比,方法非常多,比如简单的直接用等式处理,到使用Excel2016的新功能Power Query(Excel2010或Excel2013可到微软官方下载相应的插件)实现各种复杂的数据整理后再进行对比,可以根据实际需要选择使用。
大海Power
2021/08/30
16.6K0
标签制作软件如何制作1行多列的标签
在使用标签制作软件制作标签时,我们需要根据标签纸的实际尺寸在标签软件中进行设置。因为只有将标签纸的实际尺寸跟标签软件中的纸张尺寸设置成一致的,才能打印到相应的纸张上。例如常见的一行多列的标签该怎么设置呢?接下来就带大家学习下在标签制作软件中设置1行多列标签的方法:
用户5746110
2019/09/18
2.7K0
SQLite 把表或列重命名为另一个名字的操作方式
您可以暂时把表或列重命名为另一个名字,这被称为别名。使用表别名是指在一个特定的 SQLite 语句中重命名表。重命名是临时的改变,在数据库中实际的表的名称不会改变。
用户9236362
2021/11/29
2.2K0
Numpy中如何给矩阵增加一行或一列
使用Python的numpy的array结构,如何给矩阵增加一行或者一列呢? 下面提供一种方法,当然numpy还提供了很多API函数可供选择。
卡尔曼和玻尔兹曼谁曼
2019/01/22
4.8K0
Numpy中如何给矩阵增加一行或一列
列存储、行存储
Sybase在2004年左右就推出了列存储的Sybase IQ数据库系统,主要用于在线分析、数据挖掘等查询密集型应用。列存储,缩写为DSM,相对于NSM(N-ary storage model),其主要区别在于:
全栈程序员站长
2022/09/14
7.9K0
列存储、行存储
MySQL中的行转列和列转行操作,附SQL实战
MySQL是一款常用的关系型数据库,广泛应用于各种类型的应用程序和数据存储需求。在MySQL中,我们经常需要对表格进行行转列或列转行的操作,以满足不同的分析或报表需求。本文将详细介绍MySQL中的行转列和列转行操作,并提供相应的SQL语句进行操作。
网络技术联盟站
2023/06/08
18.2K2
行存储和列存储的优缺点
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/159308.html原文链接:https://javaforall.cn
全栈程序员站长
2022/09/14
1.7K0
Spark中SQL列和并为一行
但是在 spark 中没有 GROUP_CONCAT 命令,查找后发现命令 concat_ws :
机器学习和大数据挖掘
2019/07/02
1.7K0
SQL Server 动态行转列(参数化表名、分组列、行转列字段、字段值)
一.本文所涉及的内容(Contents) 本文所涉及的内容(Contents) 背景(Contexts) 实现代码(SQL Codes) 方法一:使用拼接SQL,静态列字段; 方法二:使用拼接SQL,动态列字段; 方法三:使用PIVOT关系运算符,静态列字段; 方法四:使用PIVOT关系运算符,动态列字段; 扩展阅读一:参数化表名、分组列、行转列字段、字段值; 扩展阅读二:在前面的基础上加入条件过滤; 参考文献(References) 二.背景(Contexts) 其实行转列并不是一个什么新鲜的话题
用户1112962
2018/07/03
4.3K0
点击加载更多

相似问题

VBA:不想重复一次以上的For循环

15

每个循环根据条件递增一次以上的循环变量

45

如何使用SoundPool播放32种以上的声音?

20

如何在JavaScript中循环声音?

11

每x秒播放一次声音(循环)

12
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文