我有兴趣深入了解我的Behringer X32调音台的固件,所以我从(http://www.behringerdownload.de/X32/X32_Firmware_2.10.zip)下载了实际文件并启动了IDA pro.内部包含的.update文件以某种时间戳开头,下面的字符串几乎看起来像一个目录列表,我假设那些文件以某种方式连接到固件更新文件中.例如,有字符串
seg000:00005480: logo/X32RACK.bmp
Run Code Online (Sandbox Code Playgroud)
但由于没有类似位图的结构,我认为这是压缩数据.我怎么能从这里继续?有没有办法解释各种打包和/或连接的文件格式猜测和尝试/错误的格式.
或者 - 甚至更好 - 有人知道使用这种结构的包装工吗?
64 bytes c-string
24 bytes zero, probably reserved
DWORD with some index, increasing thru the file but not always +1
DWORD of files Size
32 bytes additional data
Run Code Online (Sandbox Code Playgroud)
到目前为止我发现了什么:
00000000 db '"2.10 23db64e4672e (Thu, 20 Nov 2014 14:50:29 +0100) (clean)"',0,0,0; UpdateID
00000000 dd 6 dup(0) ; reserved
00000000 dd 181 ; NumberOfContainedFiles
00000000 dd 12380 ; SomeUnknownValue
00000000 dd 44B026A4h, 0BA3708DBh, 4DD38F6Eh, 0F7C30159h, 31D6B225h; Data
00000000 dd …Run Code Online (Sandbox Code Playgroud) 我知道-noexitPowerShell 有一点开关.
无论如何都没有使用那个开关而留在shell中?
换句话说,我想要一个执行的脚本命令然后打开shell.
好吧,我有以下问题:我需要一个动态解决方案(不知道文本,产生字体大小等),以典型地正确对齐一个下降帽.正确的意思是:下降帽的帽高度线应与段落的帽高度线相同.

例如:ZŽẐ应该都与它们的上部水平条对齐.虽然我已经看到了这个问题的一些(错误的)解决方案(它们对齐整体高度因此看起来很糟糕,有重音,dieresis等),我没有看到任何正确的解决方案.

有人知道吗?
PS:它可以工作,如果我找到一些方法来一致地将dropcap的基线与段落的第二行的基线对齐,因为从那里可以使用font-size的%-modifier完成.不幸的是,我也不知道如何归档这个.
这是一个可以玩的东西:
p.cap {
text-indent: 0;
font-size: 125%;
line-height: 125%;
text-align: justify;
}
p.cap:first-letter {
display: inline-block;
float: left;
font-size: 230%;
}
Run Code Online (Sandbox Code Playgroud)
我正在使用DBI来查询SQLite3数据库.我有什么工作,但它没有按顺序返回列.例:
Query: select col1, col2, col3, col4 from some_view;
Output:
col3, col2, col1, col4
3, 2, 1, 4
3, 2, 1, 4
3, 2, 1, 4
3, 2, 1, 4
...
(values and columns are just for illustration)
Run Code Online (Sandbox Code Playgroud)
我知道这种情况正在发生,因为我正在使用哈希,但如果我只使用数组,我还能如何获得列名?我想做的就是为任意查询得到这样的东西:
col1, col2, col3, col4
1, 2, 3, 4
1, 2, 3, 4
1, 2, 3, 4
1, 2, 3, 4
...
Run Code Online (Sandbox Code Playgroud)
(也就是说,我需要输出的顺序和列名都是正确的.)
我非常喜欢Perl新手,但我真的认为这是一个简单的问题.(我以前在Ruby和PHP中做过这个,但是我在Perl文档中追踪我正在寻找的内容时遇到了麻烦.)
这是我目前所拥有的简化版本:
use Data::Dumper;
use DBI;
my $database_path = '~/path/to/db.sqlite3';
$database = DBI->connect(
"dbi:SQLite:dbname=$database_path",
"",
"", …Run Code Online (Sandbox Code Playgroud) 我刚刚对等效的getter/setter方法测试了attr_accessor:
class A
# we define two R/W attributes with accessors
attr_accessor :acc, :bcc
# we define two attributes with getter/setter-functions
def dirA=(d); @dirA=d; end
def dirA; @dirA; end
def dirB=(d); @dirB=d; end
def dirB; @dirB; end
end
varA = A.new
startT = 0
dirT = 0
accT = 0
# now we do 100 times the same benchmarking
# where we do the same assignment operation
# 50000 times
100.times do
startT = Time.now.to_f
50000.times do |i|
varA.dirA = …Run Code Online (Sandbox Code Playgroud) 当我做以下事情时:
public double[] someFn()
{
double[][] b = new double[5][5];
return b[2];
}
Run Code Online (Sandbox Code Playgroud)
缓冲区b的其余部分是否已准备好用于垃圾箱,或者仍然在某个地方使用ref到第二行停止整个阵列b被收集?
正如我正在谈论'回合通用阵列,我不能测试最终确定...
在FireFox中,有一个可爱的小错误控制台[Ctrl + Shift + J],我可以通过从JavaScript中抛出它来添加错误.有没有办法显示警告或消息?我不是说console.warn(),我真的想在错误控制台中使用它,我只是希望它有一个警告标记而不是错误标记.
有没有办法实现这个目标?
我在Perl中遇到了一些问题.基本上,我做这样的事情:
sub myFunction
{
return (&myOtherFnA(),&myOtherFnB(),&myOtherFnC());
}
sub myOtherFnA() {return 'A';}
sub myOtherFnB() {return undef;}
sub myOtherFnC() {return 'C';}
Run Code Online (Sandbox Code Playgroud)
我的问题是:当myOtherFnB()返回undef时,我想要一个将undef作为第二个元素的列表.但是当myOtherFnB()这样做时,我只得到一个包含2个元素的列表,myOtherFnA()和myOtherFnC()的元素.我明白了:
( 'A', 'C')
但我想得到:
('A',undef,'C')
我需要使用什么语法来阻止Perl从列表中删除myOtherFnB()的返回,如果它是undef并且实际上只是将一个undef元素放入列表中?
perl ×2
arrays ×1
benchmarking ×1
compression ×1
css ×1
dbi ×1
firefox ×1
firmware ×1
html ×1
java ×1
javascript ×1
powershell ×1
ruby ×1
sqlite ×1
typography ×1
unpack ×1