问题标签 [strawberry-perl]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
633 浏览

windows - 如何将打开的 TCP 套接字从 Perl 传递到 Windows 应用程序作为标准输入和标准输出

我正在尝试将来自 Perl 程序的开放 TCP 套接字连接作为标准输入和标准输出传递到 Windows 上的外部应用程序,类似于 Unix 世界中的 inetd 所做的。

我试过的:

  1. open使用orPOSIX::dup2并调用 exec通过套接字“替换”标准输入和标准输出:

    /li>
  2. 使用IPC::open3

    /li>

在这两种情况下,执行的程序都会收到不是套接字的东西(也许是管道?),这是一个问题,因为它想使用select. 在 Windowsselect上仅适用于套接字。

我该怎么做才能将套接字传递给外部应用程序?

顺便说一句,我使用的是草莓 Perl,而不是 ActiveState。

0 投票
3 回答
348 浏览

perl - 在 Perl 中定位内存泄漏时遇到问题

我在这段代码中遇到了内存泄漏(我认为):

这是来自一个 sub,输入来自XMLin()(来自XML::Simple)。具体来说,输入是(如果重要的话)

where$lat$lon是纬度和经度。

代码需要几个小时才能运行将数据插入 SQL 服务器,而且在完成之前,Perl 实例占用了几 GB 或更多的 RAM。我确信这对某人来说很简单,但我充其量只是 Perl 的新手。

0 投票
1 回答
188 浏览

windows - Windows 上的 perl 初学者 - 在 Windows 命令提示符下执行 perl -n -e 时出现问题

我使用 W7 64bit,我刚刚安装了草莓 perl。我需要从 windows 命令行执行一个简单的脚本来操作文本文件:

我得到错误:

它在里面PATH,我也可以打电话perl -v。我尝试添加空格、替换'"、反斜杠等,但没有用。

我查看了教程并在网上搜索,发现很多这样的陈述,所以看起来这个陈述应该有效。但事实并非如此。

有人能帮帮我吗?错误在哪里?

0 投票
0 回答
688 浏览

oracle - 从 Strawberry Perl 连接到 Oracle

我从 CPAN 安装了 DBD::Oracle 并尝试使用以下代码连接到 Oracle DB:

但我收到以下错误消息:

有人可以帮我解决这个问题吗?

值得一提的是,我添加C:\instantclient_11_2了路径环境变量 + 我创建了一个环境变量ORACLE_HOME并将其设置为c:\instantclient_11_2.

0 投票
1 回答
720 浏览

xml - 在 Strawberry Perl 中安装 XML::Tidy

尝试在 Strawberry Perl 中安装 XML::Tidy 时

运行测试时出现以下错误。

我完全不知道这里有什么问题。任何人?

0 投票
2 回答
2735 浏览

perl - 草莓 perl CPAN dmake 不会构建

我在使用草莓 perl 5.16.2.2 64 位及更高版本安装 CPAN 模块时遇到问题。从 CPAN 安装时,dmake 无法构建模块并出现以下错误:

经过广泛的研究,我发现问题的解决方法是将 SHELL=cmd.exe 添加到 perl Makefile.PL 生成的 dmake Makefile 文件的顶部,然后可以使用安装模块

问题是,如果不尝试 CPAN 安装、编辑 Makefile 并在 cpan/build 目录中手动运行 dmake,则不会自动安装任何 CPAN 模块。使用环境变量 SHELL=cmd.exe 或 MAKESHELL=cmd.exe 不起作用,因为如果使用,构建将无法正确运行。

有谁知道为什么我的 Windows 7 64 位机器有这个问题的解决方法?

是否有任何 cpan 或其他技术的配置,以便我不必为我的草莓 perl 安装手动编辑和运行每个 CPAN 模块的 dmake makefile?

0 投票
1 回答
192 浏览

windows - Windows脚本自动更新用exec替换当前可执行文件?

我正在尝试在 Perl Windows 中构建一个快速的自动更新程序。我注意到,当我调用cpanp安装包的更新时,它无法安装新版本的脚本,因为脚本当前正在运行。我正在打电话cpanpCORE::system()如果我打电话cpanpexec()那会释放可执行文件以进行替换吗?或者,即使执行已完全移交给 Windows 是否仍将其捆绑cpanp

目前,我的流程看起来像这样,

  1. 从服务器下载META.yml
  2. 解析出 META.yml 的版本
  3. 对比现在的$VERSION
    • 如果当前版本较低,则使用 META.yml 中的数据生成版本字符串
      1. 使用 META.yml 的主机/路径和版本/数据信息生成打包的 URL
      2. 通知用户更新
      3. Spawncpanp使用 URL 运行更新。
    • 如果当前版本相同
      1. 没做什么

在替换可执行文件方面与 Win32 上的行为会system()有所不同吗?exec()在 Linux 上,它按设计工作。

0 投票
2 回答
860 浏览

mysql - Perl DBI 模块中的操作失败未指示错误

我正在执行类似于以下的脚本,当操作失败时,该execute函数返回一个未定义的值,因此我可以检测到它失败了,这很好。但是,我发现err()errstr没有返回任何东西。我期望分别得到错误代码和错误消息。我做错了什么?感谢您提供任何信息。

输出:

我在 64 位 Windows 7 系统上使用 Strawberry Perl(32 位)。(我正在使用 32 位版本,因为我使用的另一个模块不适用于 64 位版本。)perl.exe --version说:“这是为 MSWin32 构建的 perl 5,版本 16,subversion 3 (v5.16.3)- x86-多线程"

0 投票
3 回答
3684 浏览

windows - 在 Perl 中将 .exe 转换为 .pl?

我正在尝试从可执行 (.exe) 文件中获取 Perl 脚本 (.pl)。.exe 文件最初是用 Perl 编码的,但没有保留 .pl 文件。有没有快速的方法来做到这一点?我正在为 Windows 使用草莓 Perl。

谢谢

0 投票
0 回答
273 浏览

win32gui - win32::gui::LoadImage 没有返回任何内容

我在 Microsoft Windows 7 系统上使用为 MSWin32-x86-multi-thread 和 win32::GUI 构建的 Strawberry Perl (v5.16.3)。我正在使用 Eclipse/EPIC 编写和测试代码。

我正在尝试显示图片/位图/图标/光标。已经尝试了所有 3,结果相同,从 win32::gui::LoadImage 没有返回任何内容。

我在 gui.PM 中添加了一些打印行进行调试,并且我有一个测试脚本来测试这个 gui 函数。由于 win32::gui::LoadImage 子例程的代码不在 GUI.PM 模块中,它是从 C 库还是 Windows 中包含的?调用 win32::gui::LoadImage 的代码是否需要更改?

提前感谢鲍勃的帮助