小编Rob*_*arl的帖子

为什么Win32 :: OLE在Win2003下无法与Excel2003通信?

我有一个基于Web的Perl Win32 :: OLE脚本,它在服务器端使用Excel.多年来,它一直在运行Excel2000的Win2000服务器上愉快地工作.我们最近升级到Win2003/Excel2003,现在我从脚本中收到以下错误:

 Win32::OLE(0.1709) error 0x80070005: "Access is denied" at create_worksheet_lib.plx line 639
eval {...} called at create_worksheet_lib.plx line 639
Run Code Online (Sandbox Code Playgroud)

第639行是:

$Excel = Win32::OLE->new('Excel.Application', sub {$_[0]->Quit;}) or die "Oops, cannot start Excel";
Run Code Online (Sandbox Code Playgroud)

Perl似乎无法访问Excel.任何Windows专家都可以帮助解决问题吗?

excel perl ole

6
推荐指数
1
解决办法
702
查看次数

Perl SOAP :: Lite和请求对象的服务描述

我正在使用Perl SOAP::Lite来访问由WSDL定义的远程Web服务.这意味着我有:

use strict;
use Data::Dumper;
use SOAP::Lite +trace => 'debug';

my $service = SOAP::Lite->service('http://path/wsdl');
Run Code Online (Sandbox Code Playgroud)

好到目前为止.问题是我需要访问HTTP::Request对象以发送自定义HTTP请求标头(我不是在谈论身份验证标头).看起来我可以在成功调用后访问请求对象:

my $result = $service->getClient('parameters');
print Dumper($service->transport->http_request);
Run Code Online (Sandbox Code Playgroud)

那会给我正确的HTTP::Request对象:

$VAR1 = bless( {
             '_content' => '',
             '_uri' => undef,
             '_headers' => bless( {}, 'HTTP::Headers' ),
             '_method' => undef
           }, 'HTTP::Request' );
Run Code Online (Sandbox Code Playgroud)

如果我在执行autoDispatch($service->getClient部件)之前尝试访问请求对象,则传输对象为空,我无法修改请求.如果我SOAP::Lite->proxy顺便说一句,似乎一切都会正常工作- 但这会破坏预先定义的服务定义的有用性.

任何想法,我想如何从服务定义访问请求对象,而不必先打电话?鸡蛋和鸡蛋问题真的......

谢谢!

perl wsdl soaplite

6
推荐指数
1
解决办法
761
查看次数

如何从表头(th)中获取相应的表列(td)?

我想得到表头的整个列.

例如,我想选择表头"Address"来隐藏地址列,并选择"Phone"标题来显示对应列.

<table>
<thead> 
    <tr>
        <th id="name">Name</th>
        <th id="address">Address</th>
        <th id="address" class='hidden'>Address</th>
    </tr>
</thead> 
<tbody>
    <tr>
        <td>Freddy</td>
        <td>Nightmare Street</td>
        <td class='hidden'>123</td>
    </tr>
    <tr>
        <td>Luis</td>
        <td>Lost Street</td>
        <td class='hidden'>3456</td>
    </tr>
</tbody>
Run Code Online (Sandbox Code Playgroud)

我想做一些像http://www.google.com/finance?q=apl(参见相关公司表)(点击"添加或删除列"链接)

javascript jquery

6
推荐指数
1
解决办法
7572
查看次数

Windows上的Perl flock()在哪里?

我有一个Perl脚本,我想在Windows上运行,使用Strawberry PerlActivePerl ; 我不在乎哪个.但是,此脚本使用flock()调用,这些调用似乎不包含在Perl的任何一个版本中.

任何人都可以帮助实现这一目标吗?

perl flock fcntl

5
推荐指数
1
解决办法
3386
查看次数

Perl - 将数组元素句子与变量进行比较

我使用grep在temporaryF文件和arrayWarning之间返回不匹配的数组

my @c =grep!${{map{$_,1}@temporaryF}{$_},@arrayWarning;
Run Code Online (Sandbox Code Playgroud)

在@c里面有很多行例如:

Sun Sep 30 00:05:55 fibre channel DENY forever
Sun Sep 30 00:06:55 fibre channel ROOT cause
Sun Sep 30 00:08:55 fibre channel ROOT cause 
Sun Sep 30 00:10:55 fibre channel ROOT cause  
Sun Sep 30 00:20:55 fibre channel DANN 
Sun Sep 30 00:30:55 fibre channel DANN  
Run Code Online (Sandbox Code Playgroud)

你可以看到ROOT在@c中发生了3次.如何迭代@c仅输出最新出现的ROOT - > Sun Sep 30 00:10:55光纤通道ROOT而不是其他重复行.

所以它会变成:

Sun Sep 30 00:05:55 fibre channel DENY forever  
Sun Sep 30 00:10:55 fibre channel ROOT cause  
Sun Sep 30 00:30:55 fibre …
Run Code Online (Sandbox Code Playgroud)

arrays perl grep

5
推荐指数
1
解决办法
313
查看次数

非事件驱动的HTTP服务器环境中的服务器端Websocket实现

我试图理解服务器端Websocket端点的实现/选项 - 特别是在使用PSGI/Plack的Perl中我有一个问题:为什么所有服务器端websocket实现都基于事件驱动的PSGI服务器(Twiggy,Tatsumaki等). )?

我认为websocket通信是异步的,但非事件驱动的PSGI服务器(比如Starman)可以产生一个异步监听器来处理websocket方面的事情.我已经看过(但不了解)Websocket服务器的PHP实现,为什么不用PSGI就可以完成同样的操作而不必将服务器更改为事件驱动的服务器?

perl websocket psgi

5
推荐指数
1
解决办法
388
查看次数

如何在不使用Bouncy Castle更改CMS中的对称密钥和加密内容的情况下更改非对称密钥对

我有一个X.509证书和相关的PrivateKey.我正在尝试使用带有CMSEnvelopedData的java BouncyCastle加密PDF文档.

我可以加密它,它返回sucefully加密文件.我可以解密一切.但是现在我想要更改密钥对,而不是对称密钥,因此也就是加密文档.

我为什么要这样做?因为在某些情况下应用程序可以更改某些不对称算法,并且不必重新加密所有文档,而只需要对称密钥.

我知道我可以通过以下方式获取加密内容:

CMSEnvelopedData encryptedData = new CMSEnvelopedData(new FileInputStream("FILE"));
ContentInfo dataInfo= encryptedData .toASN1Structure();
Run Code Online (Sandbox Code Playgroud)

在那之后,我不知道我必须做什么来获得加密的对称密钥.之后,我想解密它,用另一个密钥对加密,然后使用相同的加密数据创建另一个CMS,使用相同的对称密钥和新密钥对.

任何帮助将不胜感激.谢谢.

java encryption cryptography bouncycastle

5
推荐指数
1
解决办法
454
查看次数

Perl push函数提供索引值而不是数组元素

我正在读一个名为remin-freq的文本文件,它具有以下格式的数据:

1

1

13

2
Run Code Online (Sandbox Code Playgroud)

我想读取行并将值存储在数组中,如下所示:@a=(1, 1, 13, 2).Perl push函数给出索引值/行号,即1,2,3,4,而不是我想要的输出.你能指出错误吗?这是我做的:

use strict;
use warnings;

open(FH, "<mention-freq") || die "$!";
my @a;
my $line;
while ($line = <FH>)
{
    $line =~ s/\n//;
    push @a, $line;
    print @a."\n";
}
close FH;
Run Code Online (Sandbox Code Playgroud)

arrays perl

5
推荐指数
1
解决办法
458
查看次数

Perl CPAN字典

在Perl世界中有一个叫CPAN的好东西.它是开源Perl库的一个大存储.

我使用CPAN的模块,我自己发布了几个发行版.

我使用CPAN,但有一件我不明白的重要事情.我不知道CPAN上用于不同事物的词是什么.在这篇文章的开头我已经使用了的话libraries,modules,distributions,但我不知道,我已经正确地使用它们.

您能否解释一下CPAN中每个单词的含义(如果它们可以在CPAN范围内使用):

  • 发布
  • 分配
  • 图书馆

perl cpan

5
推荐指数
1
解决办法
214
查看次数

Foreach on Perl中的哈希变量

我是Perl脚本的新手,foreach对哈希变量有疑问.我想打印哈希值的所有值.这是一个程序:

%colors = (a => 1, b=>2, c=>3, d=>4, e=>5);
foreach $colors(keys %colors)
{
    print "$colors{%colors} \n";
}
Run Code Online (Sandbox Code Playgroud)

输出是:

5
3
1
2
4
Run Code Online (Sandbox Code Playgroud)

为什么值随机排序?或者这种随机性背后的逻辑是什么?请澄清我的疑问.

perl hash foreach

4
推荐指数
2
解决办法
939
查看次数