我试图了解 ARM 程序集中函数的开始和结束:
PUSH {R0-R2, LR}
POP {R0-R2, PC}
Run Code Online (Sandbox Code Playgroud)
看看 IDA 中的这段代码,这是我的理解(假设 SP 是 0x100):
PUSH R0 ; sp = 0xFC
PUSH R1 ; sp = 0xF8
PUSH R2 ; sp = 0xF4
PUSH LR ; sp = 0xF0
POP R0 ; sp = 0xF4
POP R1 ; sp = 0xF8
POP R2 ; sp = 0xFC
POP PC ; sp = 0x100
Run Code Online (Sandbox Code Playgroud)
看起来 PC 获得了 R0 的值,而它应该获得 LR 的值。
PC不应该得到LR的值吗?
我正忙着在谷歌Chrome扩展程序内部进行通信,并使用以下指南:https://developer.chrome.com/extensions/messaging
它曾经工作,但我遇到了一个错误:
响应tabs.query时出错:TypeError:无法读取未定义的属性"id"
我比较了我的代码和谷歌Chrome代码,我似乎无法找到我的代码产生错误的原因:
chrome.tabs.query({active: true, currentWindow: true}, function(tabs) {
chrome.tabs.sendMessage(tabs[1].id, {fen: request.needMove}, function(response) {
//console.log(response.farewell);
});
});
Run Code Online (Sandbox Code Playgroud)
这是我发送到的地方:
chrome.runtime.onMessage.addListener(
function(request, sender, sendResponse) {
console.log("recv FEN : " + FEN);
FEN = request.fen;
setCookie("FEN_SET", "true" , 1);
setFEN(FEN);
});
Run Code Online (Sandbox Code Playgroud)
我无法解决这个错误,无论我尝试它保持不变."无法读取未定义的属性"暗示"标签"是未定义的,据我所知,但我不明白为什么它在Google示例中有效,而在此处则不然.
另一个问:
如果我试图将它发送到标签[1]这是否意味着它是第二个位置的标签,还是我解释错了?
javascript jquery google-chrome communication google-chrome-extension
试图解析以下元素的值:
input type ="hidden"name ="csrf_token"value ="VUNht8fnmxmJXJIMassWW8SAwWKNJ3SC8POA4FtSqEKhG1rcoB3ZNqcPqa615tPsF_hzW0l4zDjSEHJYMz9Ogw ==">
元素周围的区域如下所示:
<input type="hidden" name="redirect" value="">
<input type="hidden" name="invite_code" value="">
<input type="hidden" name="invite" value="">
<input type="hidden" name="country" value="">
<input type="hidden" name="csrf_token" value="325fTt31vp42rbt90gNqBT923_Z04snI5tmhCOAhSzpmL2mr3NBAho1zp6bEirZrLdQna5Ocm6_iC3OYdbBqLg==">
<div>
Run Code Online (Sandbox Code Playgroud)
使用以下代码行:
preg_match("/csrf_token. value=.(.+==).>/", $result, $output_array);
Run Code Online (Sandbox Code Playgroud)
$ output_array保留为空,如http://www.phpliveregex.com/中的正则表达式是正确的.
我究竟做错了什么?