问题列表 - 第25417页

如何为 CGI 脚本设置 Perl 的 @INC?

我有以下最简单的 Perl CGI 脚本:

use strict;
use warnings;
use CGI();
use CGI::Carp qw(fatalsToBrowser);

use Template;

print CGI::header();

foreach(@INC) {
    print "$_\n";
}
Run Code Online (Sandbox Code Playgroud)

当调用 ( http://[..]/cgi-bin/p.cgi ) 时,出现以下错误:

Can't locate Template.pm in @INC (@INC contains: /usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.8 /usr/lib/perl5/site_perl /usr/lib/perl5/vendor_perl/5.8.8/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.8 /usr/lib/perl5/vendor_perl /usr/lib/perl5/5.8.8/i386-linux-thread-multi /usr/lib/perl5/5.8.8 .) at /home/pistacchio/webapps/htdocs/cgi-bin/p.cgi line 8.
BEGIN failed--compilation aborted at /home/pistacchio/webapps/htdocs/cgi-bin/p.cgi line 8.
Run Code Online (Sandbox Code Playgroud)

我确保安装了模板,并且确实在从 shell 运行此程序时它可以工作(加载模板)并输出:

Content-Type: text/html; charset=ISO-8859-1

/home/pistacchio/lib/perl5
/home/pistacchio/lib/perl5/lib/i386-linux-thread-multi
/home/pistacchio/lib/perl5/lib
/home/pistacchio/lib/perl5/lib/i386-linux-thread-multi
/usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi
/usr/lib/perl5/site_perl/5.8.8
/usr/lib/perl5/site_perl
/usr/lib/perl5/vendor_perl/5.8.8/i386-linux-thread-multi
/usr/lib/perl5/vendor_perl/5.8.8
/usr/lib/perl5/vendor_perl
/usr/lib/perl5/5.8.8/i386-linux-thread-multi
/usr/lib/perl5/5.8.8
Run Code Online (Sandbox Code Playgroud)

模板安装在 /home/pistacchio/lib/perl5/lib/i386-linux-thread-multi

[pistacchio@web118 i386-linux-thread-multi]$ pwd
/home/pistacchio/lib/perl5/lib/i386-linux-thread-multi
[pistacchio@web118 i386-linux-thread-multi]$ …
Run Code Online (Sandbox Code Playgroud)

perl cgi module

2
推荐指数
1
解决办法
2561
查看次数

存储"派生"值与在提取时计算它们

如果您的值仅依赖于一个或多个其他字段+/-常数(例如零售价格和折扣价格),那么存储这些值或者在检索数据时"动态"计算它们会更好吗?

database database-design

7
推荐指数
2
解决办法
2503
查看次数

我可以将VB代码转换为C++代码

我可以将VB代码转换为C++吗?我该怎么做?

这是我的VB代码:

Dim OpenFileDialog1 As New OpenFileDialog

With OpenFileDialog1
    .CheckFileExists = True
    .ShowReadOnly = False
    .Filter = "All Files|*.*|Bitmap Files (*)|*.bmp;*.gif;*.jpg"
    .FilterIndex = 2
    If .ShowDialog = DialogResult.OK Then
        ' Load the specified file into a PictureBox control.
        PictureBox1.Image = Image.FromFile(.FileName)
    End If
End With
Run Code Online (Sandbox Code Playgroud)

c++ vb.net translation

2
推荐指数
1
解决办法
735
查看次数

哪种更好的Java编程实践:堆栈枚举和枚举构造函数,或子类化?

鉴于有限数量的项目有所不同,用堆叠的枚举和枚举构造函数表示它们还是将它们子类化更好?或者是否有更好的方法?

为了给你一些背景,在我的小RPG程序中(具有讽刺意味的是简单),角色在他或她的库存中有不同种类的物品.项目因类型,用途和效果而异.

例如,一个库存项目是一个名为Gremlin的拼写滚动,用于调整Utility属性.另一件物品可能是一把名为Mort的剑,用于战斗并造成伤害.

在我的RPG代码中,我现在尝试了两种表示库存项目的方法.一个办法是子类(例如,InventoryItem - >拼写 - > AdjustingAttributes; InventoryItem - >武器 - >剑)并在需要时实例化每个子类,以及诸如像的Gremlin和莫特名称分配值.

另一种方法是堆叠枚举和枚举构造函数.例如,我为itemCategory和itemSpellTypes以及itemWeaponTypes创建了枚举,而InventoryItem枚举是这样的:

public enum InventoryItem {
   GREMLIN(itemType.SPELL, itemSpellTypes.ATTRIBUTE, Attribute.UTILITY),
   MORT(itemType.WEAPON, itemWeaponTypes.SWORD, 30);

   InventoryItem(itemType typeOfItem, itemSpellTypes spellType, Attribute attAdjusted) {
   // snip, enum logic here
   }
   InventoryItem(itemType typeOfItem, itemWeaponTypes weaponType, int dmg) {
   // snip, enum logic here 
   }
   // and so on, for all the permutations of items. 

}
Run Code Online (Sandbox Code Playgroud)

是否有比这两种方法更好的Java编程实践?或者,如果这些是唯一的方式,哪两个更好?提前感谢您的建议.

java enums multiple-constructors subclassing

7
推荐指数
3
解决办法
1650
查看次数

为什么relative_require不能在Ruby 1.8.6上运行?

我在Windows 7上学习Ruby(使用版本1.8.6).

当我尝试运行下面的stock_stats.rb程序时,我收到以下错误:

C:\Users\Will\Desktop\ruby>ruby stock_stats.rb
stock_stats.rb:1: undefined method `require_relative' for main:Object (NoMethodE
rror)
Run Code Online (Sandbox Code Playgroud)

我有三个v.small代码文件:

stock_stats.rb

require_relative 'csv_reader'

reader = CsvReader.new

ARGV.each do |csv_file_name|
  STDERR.puts "Processing #{csv_file_name}"
  reader.read_in_csv_data(csv_file_name)
end

puts "Total value = #{reader.total_value_in_stock}"
Run Code Online (Sandbox Code Playgroud)

csv_reader.rb

require 'csv' 
require_relative 'book_in_stock'

class CsvReader

  def initialize
    @books_in_stock = []
  end

  def read_in_csv_data(csv_file_name)
    CSV.foreach(csv_file_name, headers: true) do |row|
      @books_in_stock << BookInStock.new(row["ISBN"], row["Amount"])
    end
  end  

  # later we'll see how to use inject to sum a collection
  def total_value_in_stock
    sum = 0.0        
    @books_in_stock.each {|book| …
Run Code Online (Sandbox Code Playgroud)

ruby require

17
推荐指数
2
解决办法
2万
查看次数

在应用程序间共享文件

我可以与另一个共享一个应用程序相关数据.假设我在apk2的资源/原始文件夹中有一个音乐文件.我可以在apk1中使用相同的文件.

谢谢...

android file sharing

2
推荐指数
1
解决办法
6046
查看次数

如果配置错误且无事可做,退出Windows Service OnStart的正确方法是什么?

这就是我得到的:

protected override void OnStart(string[] args)
{
    if (SomeApp.Initialize())
    {
        SomeApp.StartMonitorAndWork();
        base.OnStart(args);
    }
}

protected override void OnStop()
{
    SomeApp.TearDown();
    base.OnStop();
}
Run Code Online (Sandbox Code Playgroud)

这里Initialize读取一个配置文件,如果有错,那就没什么可做的,所以服务应该停止!如果配置正常StartMonitorAndWork启动:

Timer(new TimerCallback(DoWork), null, startTime, loopTime);
Run Code Online (Sandbox Code Playgroud)

和DoWork定期轮询数据库.

如果Initialize失败(我检查日志文件),我尝试从管理工具 - >服务停止服务,我得到:

Could not stop the SomeService on Local Computer. The service did not return an error. 
This could be internal Windows error or an internal service error. 
If the problem persists, contact system administrator.
The question is: 
"Is exiting OnStart without doing nothing enough if Initialize returns false?

或者应该有这样的事情: …

c# service windows-services

29
推荐指数
2
解决办法
2万
查看次数

你会如何在Ruby中简洁地编写这个C#代码(使用yield关键字)?

有没有一种yield在Ruby中模拟的好方法?我有兴趣在Ruby中编写类似的"无限fib序列".

这是代码:

using System;
using System.Collections.Generic;
using System.Linq;


namespace cs2 {
    class Program {
        static void Main(string[] args) {          
          var i=Fibs().TakeWhile(x=>x < 1000).Where(x=>x % 2==0).Sum();
        }

        static IEnumerable<long> Fibs() {
            long a = 0, b = 1;
            while (true) {
                yield return b;
                b += a;
                a = b - a;
            }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

如果有可能,请举个例子.

c# ruby linq translation

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

使用Visual C++ Express 2010时找不到atlbase.h

因此,我尝试将我的项目从Windows XP上的先前版本移至Windows 7上的Visual C++ Express 2010.我找到了各种各样的错误,其中找不到atlbase.h.这不是一个问题,但我想记录我的解决方案对其他人的意义.

从我之前的安装中复制以下PlatformSDK文件并将它们放在我的Windows 7计算机上.

PlatformSDK /包括/ ATL

PlatformSDK /包括/ MFC

PlatformSDK/lib目录

PlatformSDK/src目录/ ATL

然后,我将项目属性中的VC++目录更改为指向这些目录.

包括目录 -

*包括/ ATL

*包括/ MFC

图书馆目录 -

*LIB

来源目录 -

*SRC/ATL

对stdafx.h进行更改

就在这一行之后:#include"atlbase.h"

添加以下行:extern CComModule _Module;

希望你现在准备好了!可能不是,但也许你在路上很顺利.

atl visual-c++ visual-c++-2010-express

13
推荐指数
2
解决办法
2万
查看次数

memcpy(),size参数的值应该是多少?

我想将一个int数组复制到另一个int数组.它们使用相同的长度定义,因此它们总是具有相同的长度.

memcpy()的size参数的以下两个替代方法的优缺点是什么?

memcpy(dst, src, ARRAY_LENGTH*sizeof(int));
Run Code Online (Sandbox Code Playgroud)

要么

memcpy(dst, src, sizeof(dst));
Run Code Online (Sandbox Code Playgroud)

第二种选择总能奏效吗?无论内容如何?

有利于最后一件事的一件事是,如果阵列要改变,那么更新memcpy()将是一些内容管理.

谢谢

c arrays sizeof memcpy

18
推荐指数
4
解决办法
5万
查看次数