我正在为Android写一个动态壁纸.为了测试我的基本代码是否正常工作,我在屏幕的左上角显示了一个矩形:
canvas.drawRect(0f,0f,50f,50f,paint);
Run Code Online (Sandbox Code Playgroud)
矩形的一半位于主屏幕顶部的栏下方.
我尝试使用以下方法考虑像素偏移:
public void onOffsetsChanged(float xOffset, float yOffset,
float xOffsetStep, float yOffsetStep, int xPixelOffset,
int yPixelOffset)
...
canvas.drawRect(0f+xPixelOffset,0f+yPixelOffset,50f+xPixelOffset,50f+yPixelOffset
,paint);
Run Code Online (Sandbox Code Playgroud)
但矩形仍然在条形图下方绘制.怎么找到酒吧的哪里结束所以我可以在它下面画?
干杯,
皮特
我又回来了,沮丧,拼命寻求帮助:D.
我试图为一个简单的程序创建一个作弊,它基本上是一个.dll文件,当它使用它的基地址注入它时,它将改变主程序的整数值.问题是,我找不到使用作弊引擎主要是因为有多个级别指针与NEGATIVE?偏移.例如:
//Starting pointer address
0x0033FCF0 -> 200
//Finding second level pointer using "Find out what's accessing this address" in Cheat Engine
**(mov eax,[ebp+08])** // **EAX=0x00000007** , **EPB=0x0033FCE8 => mov 00000007,[0033FCE8+08]**
2nd Level Pointer:
**(0033FCE8+18) -> 200**
Run Code Online (Sandbox Code Playgroud)
所以我继续使用"找出什么是......"来找到下一个指针,但是当使用T-SEARCH和第二级指针地址时,我会得到7到8个新的静态地址.
问题是,我不知道哪一个是正确的,因为作弊引擎REFUSES让我使用NEGATIVE添加指针?偏移.
例:
Base Pointer:
**mov eax,[epb-18] !!!** // Notice the **MINUS**
Run Code Online (Sandbox Code Playgroud)
并且除了一切之外,Cheat Engine拒绝接受具有负偏移的指针!
那么,是否有另一种从多个级别指针中查找基址的方法?欢迎OlyDBG/Idapro解决方案.非常感谢你们!
这是我试图破解的简单程序的源代码:
#include <iostream>
#include <conio.h>
#include <windows.h>
#include <stdlib.h>
int main(){
int hp = 100;
while(1){
std::cout << hp << std::endl;
Sleep(3000);
hp += 10;
system("cls");
}
return …Run Code Online (Sandbox Code Playgroud) 我正在实现一个简单的VM,目前我正在使用运行时算术来计算单个程序对象地址作为基指针的偏移量.
我今天就这个问题提出了几个问题,但我似乎无处可去.
我从第一个问题中学到了一些东西 - 对象和结构成员访问和地址偏移计算 - 我了解到现代处理器具有虚拟寻址功能,允许计算内存偏移,而无需任何额外的周期用于算术.
问题二 - 在C/C++编译期间是否解决了地址偏移? - 我了解到手动进行偏移时无法保证这种情况发生.
到目前为止,我应该清楚的是,我想要实现的是利用硬件的虚拟内存寻址功能并从运行时卸载它们.
我正在使用GCC,就像平台一样 - 我在Windows上开发x86,但由于它是一个VM,我希望它能够在GCC支持的所有平台上高效运行.
因此欢迎任何有关该主题的信息,我们将非常感谢.
提前致谢!
编辑:关于我的程序代码生成的一些概述 - 在设计阶段,程序被构建为树层次结构,然后递归地序列化为一个连续的内存块,以及索引对象并计算它们从程序内存块的开头的偏移量.
编辑2:这是VM的一些伪代码:
switch *instruction
case 1: call_fn1(*(instruction+1)); instruction += (1+sizeof(parameter1)); break;
case 2: call_fn2(*(instruction+1), *(instruction+1+sizeof(parameter1));
instruction += (1+sizeof(parameter1)+sizeof(parameter2); break;
case 3: instruction += *(instruction+1); break;
Run Code Online (Sandbox Code Playgroud)
情况1是一个函数,它接受一个参数,该参数在指令之后立即找到,因此它作为指令的1个字节的偏移量传递.指令指针递增1 +第一个参数的大小以找到下一个指令.
情况2是一个函数,它接受两个参数,与之前相同,第一个参数作为1个字节的偏移量传递,第二个参数作为1个字节的偏移量加上第一个参数的大小.然后,指令指针增加指令的大小加上两个参数的大小.
情况3是goto语句,指令指针递增一个紧跟goto指令的偏移量.
编辑3:根据我的理解,操作系统将为每个进程提供自己专用的虚拟内存寻址空间.如果是这样,这是否意味着第一个地址总是......好零,所以从内存块的第一个字节开始的偏移实际上就是这个元素的地址?如果内存地址专用于每个进程,并且我知道程序存储器块的偏移量和每个程序对象与内存块的第一个字节的偏移量,那么在编译期间是否解析了对象地址?
问题是在编译C代码期间这些偏移是不可用的,它们在"编译"阶段和字节代码转换期间就已知.这是否意味着没有办法为"免费"进行对象内存地址计算?
例如,如何在Java中完成此操作,其中只将虚拟机编译为机器代码,这是否意味着由于运行时算术,对象地址的计算会降低性能?
我在我的网站上实现了CSS Tricks Smooth Page Scroll,它运行得非常好.但是,因为我在页面顶部有一个固定的导航栏,当页面滚动到相应的锚点div时,div的顶部会消失在导航栏后面.如何偏移滚动(约70px)以显示整个div?我试过这样做:
var targetOffset = $target.offset().top - 70;
Run Code Online (Sandbox Code Playgroud)
但这并不是很有效.页面滚动到适当的位置,然后它立即跳回来,以便隐藏div的顶部.我错过了什么?这是完整的代码:
$(function() {
function filterPath(string) {
return string
.replace(/^\//,'')
.replace(/(index|default).[a-zA-Z]{3,4}$/,'')
.replace(/\/$/,'');
}
var locationPath = filterPath(location.pathname);
var scrollElem = scrollableElement('html', 'body');
// Any links with hash tags in them (can't do ^= because of fully qualified URL potential)
$('a[href*=#]').each(function() {
// Ensure it's a same-page link
var thisPath = filterPath(this.pathname) || locationPath;
if ( locationPath == thisPath
&& (location.hostname == this.hostname || !this.hostname)
&& this.hash.replace(/#/,'') …Run Code Online (Sandbox Code Playgroud) @SuppressWarnings("deprecation")
public List<Picture> returnLimitedList(int offset, int end) {
List<Picture> pictureList = new ArrayList<Picture>();
int startRow = offset;
int maxRows = end;
try {
QueryBuilder<Picture, Integer> queryBuilder = dao.queryBuilder();
queryBuilder.offset(startRow).limit(maxRows);
pictureList = dao.query(queryBuilder.prepare());
} catch (SQLException e) {
e.printStackTrace();
}
return pictureList;
}
Run Code Online (Sandbox Code Playgroud)
例如:(0 - 30)
有没有其他方法可以返回初始索引和结束索引的有限列表?
当我搜索文档时,我拿了前10个并将其提供给视图,如果用户滚动到列表的末尾,则应显示下10个元素。
我知道显示的文档的最后一个文档ID,现在我必须获取下一个10。基本上,我将执行完全相同的搜索,但偏移量为10,但是使用相同的查询进行搜索会更好,将最后检索到的文档的文档ID,并在具有该ID的文档之后检索匹配的文档。
Elasticsearch可以做到吗?
===更新
我想指出更多我的问题,因为目前所描述的似乎还不够清楚。抱歉
案子:
您有一种饲料,饲料会每秒增长。如果用户转到该提要,则将获得最近的10个条目;如果向下滚动,则希望获得下一个10个条目。
由于Feed每秒增长,因此通常的偏移量/限制(elasticsearch中的/大小)无法解决此问题,因此您将显示已显示的条目或全新的条目,具体取决于第一次请求(前10个条目)之间的时间以及下一个条目的请求。
在已经显示的条目之后获取下一个10个元素的请求将为后端提供最后显示的条目的ID。后端知道忽略此特定条目之前的所有条目。
目前,我正在用代码处理这个问题,我从Elasticsearch请求具有所有匹配条目的列表,并对其进行迭代,这样我就可以做我想做的所有事情(毫不奇怪)并提取所需的全部块。
我的问题是:elasticsearch中是否存在针对此问题的内置解决方案。因为按照我的方式解决问题并不是最快的。

该代码的最终目标是确保客户定义的形状实际上可以由我们的......呃机器加工.要做到这一点,我们将指定的形状向内偏移到钻头的半径,然后向外向外偏移相同的量,从而将任何太小的部分弄圆,以实际适合钻头.对于多边形偏移,我们使用的是Angus Johnson的Clipper库,版本5.1.6(c ++).
但是从图中可以看出,这导致了一些意想不到的形状.在图片中,我使用-radius偏移原始形状(绿色,大部分被后面的绘图覆盖),ClipperLib::OffsetPolygon以获得黄色形状,然后偏移半径以获得红色形状.
理论上,对于链接中显示的情况,这应该导致红色形状完全匹配绿色形状.
如果出现上述结果可能会出现什么问题?
问题:我想从HDFS读取文件的一部分并将其返回,例如从1000行的文件中返回101-120行.
我不想使用,seek因为我读过它很贵.
我有日志文件,我使用PIG处理成有意义的数据集.我一直在编写一个API来返回数据以供前端消费和显示.这些经过处理的数据集可以足够大,我不想在一个啜食中读出Hadoop中的整个文件,以节省线路时间和带宽.(比方说5 - 10MB)
目前我使用a BufferedReader来返回工作正常的小摘要文件
ArrayList lines = new ArrayList();
...
for (FileStatus item: items) {
// ignoring files like _SUCCESS
if(item.getPath().getName().startsWith("_")) {
continue;
}
in = fs.open(item.getPath());
BufferedReader br = new BufferedReader(new InputStreamReader(in));
String line;
line = br.readLine();
while (line != null) {
line = line.replaceAll("(\\r|\\n)", "");
lines.add(line.split("\t"));
line = br.readLine();
}
}
Run Code Online (Sandbox Code Playgroud)
我在网上搜索了很多和Stack一样,但还没找到我需要的东西.
也许这完全是错误的做法,我需要一套完全独立的代码和不同的功能来管理它.对任何建议开放.
谢谢!
正如基于以下讨论的研究所补充的那样: Hadoop过程如何记录跨越块边界的记录? Hadoop FileSplit阅读
缺点是,commitSync()将重试提交,直到它成功或遇到不可恢复的失败,commitAsync()将不会重试.
这句话对我来说并不清楚.我认为消费者向代理发送提交请求,如果代理在某些超时内没有响应,则意味着提交失败.我错了吗 ?
你能澄清的差异commitSync ,并commitAsync在细节?
另外,请提供我更喜欢哪种提交类型的用例.
单元格d2包含一个数字,假设它是4。
我想将偏移量的参考设置为a5。
"a"&text(d2+1,0)可以表达串a5,我想从调用范围内的数据a5,直到 a9。
OFFSET("a"&text(d2+1,0),0,0,5,1)
Run Code Online (Sandbox Code Playgroud)
为什么Excel中的offset函数不能接受"a"&text(d2+1,0)为a5?
如何在Excel中修复偏移函数表达式?