小编SSp*_*oke的帖子

C#Bitwise-或运算符用于符号扩展操作数; 首先考虑转换为较小的无符号类型

我知道这些警告可能毫无意义..但无论如何我可以摆脱它们?

我收到了7个这样的警告.

Bitwise-or operator used on a sign-extended operand; consider casting to a smaller unsigned type first

这与OR运算符有关 |

我强调了发出警告的内容.

int result = (int)ror((uint)(v76 ^ (v75 | 0x862D63D3)), (uint)(BitConverter.ToInt32(v4, 72) ^ 0x22));

int v11 = (int)rol((uint)(int)((v8 & v10 | ~v10 & 0xEFCDAAC9) + v3[2] - 1126481991), 17);

int v144 = (int)rol((uint)(int)((v141 & v143 | ~v143 & 0xEFCDAAC9) + v3[2] - 1126481991), 17);

int v77 = (int)(`BitConverter.ToInt32(v4, 52) | 0x96C35837`);


BitConverter.GetBytes((int)(v30 & 0x870DEA8A | v29)).CopyTo(v2, 32);

int temp24 |= (int)(BitConverter.ToInt32(v3, 48) …
Run Code Online (Sandbox Code Playgroud)

c# bit-manipulation compiler-warnings suppress-warnings

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

VB.NET堆栈像Switch C#/ Java一样选择Case语句

似乎如果我将案例堆叠在一起它们不能像一个一样工作.既然VB.NET案例不需要使用Exit Select/ Return,那么每次在它下面检测到新的Case时它似乎会自动放入?

Dim Test as Integer = 12

Select Case Test
  Case 11
  Case 12
  Case 13
    MsgBox.Show("Could be 11 or 12 or 13?")
End Select
Run Code Online (Sandbox Code Playgroud)

它似乎只工作13件作品..

Gotta always remember this rule that you can't stack Cases like this from now on
移植应用程序时要记住它并不容易

vb.net case-statement switch-statement

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

Java ConcurrentHashMap不是线程安全的..是吗?

之前我正在使用HashMap

   public Map<SocketChannel, UserProfile> clients = new HashMap<SocketChannel, UserProfile>();
Run Code Online (Sandbox Code Playgroud)

现在我已经切换到ConcurrentHashMap以避免同步块,现在我遇到了问题,我的服务器每秒都有200-400个并发客户端,预计会随着时间的推移而增长.

现在看起来像这样

public ConcurrentHashMap<SocketChannel, UserProfile> clients = new ConcurrentHashMap<SocketChannel, UserProfile>();
Run Code Online (Sandbox Code Playgroud)

我的服务器设计就像这样.我有一个工作线程来处理大量的数据包.每个数据包都使用packetHandler子程序(不是线程的一部分)进行检查,几乎任何客户端都可以随时调用它,它几乎就像静态但不是.

我的整个服务器大多是单线程的,除了数据包处理部分.

无论如何,当有人使用命令时,如在线计算所有客户端并从中获取一些信息.

当计数正在进行时(这会导致我的问题),客户端也可能会断开连接并从ConcurrentHashMap中删除.

另外我想在这里添加一些代码.

                int txtGirls=0;
                int vidGirls=0;
                int txtBoys=0;
                int vidBoys=0;
                Iterator i = clients.values().iterator();
                while (i.hasNext()) {
                    UserProfile person = (UserProfile)i.next();
                    if(person != null) {
                        if(person.getChatType()) {
                            if(person.getGender().equals("m"))
                                vidBoys++;
                            else //<-- crash occurs here.
                                vidGirls++;
                        } else if(!person.getChatType()) {
                            if(person.getGender().equals("m"))
                                txtBoys++;
                            else
                                txtGirls++;
                        }
                    }
                }
Run Code Online (Sandbox Code Playgroud)

我的意思是我当然要通过在Iterator中添加一个try-catch Exception来跳过这些空客户端来修复它.

但我不明白,如果检查上面是否(人!= null)不应该嵌套的代码自动工作..

如果它不意味着它在迭代时被删除,这应该是不可能的,因为它是线程安全的wtf?

我该怎么办?或者是try-catch Exception最好的方法?

这是例外

java.lang.NullPointerException
    at …
Run Code Online (Sandbox Code Playgroud)

java null try-catch nullpointerexception concurrenthashmap

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

SQLite Unique Key,包含两列组合

我正在努力确保当我运行以下查询时,只有第一个INSERT INTO才能工作..我知道我必须做slot UNIQUE

插槽可以是0-5 INTEGER,但这并不意味着该表中只能接受6个表数据行.

对于每一个匹配它应该只允许6表数据行作为playerHash slotUNIQUE(不能有相同的时隙列的重复,对于每个playerHash列).

//Below Query Should Pass
INSERT INTO Buying(itemId, amount, price, bought, slot, playerHash) VALUES (1, 1, 1, 1, 1, 1);
//Below Query Should Fail
INSERT INTO Buying(itemId, amount, price, bought, slot, playerHash) VALUES (1, 1, 1, 1, 1, 1);
//Below Query Should Pass
INSERT INTO Buying(itemId, amount, price, bought, slot, playerHash) VALUES (1, 1, 1, 1, 1, 2);
//Below Query Should Fail
INSERT INTO Buying(itemId, amount, price, bought, …
Run Code Online (Sandbox Code Playgroud)

sql database sqlite database-design

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

如何将字节数组转换为UInt32数组?

让我们说在C++中,我得到了这样的代码..

void * target
uint32 * decPacket = (uint32 *)target;
Run Code Online (Sandbox Code Playgroud)

所以在C#中就像...

byte[] target;
UInt32[] decPacket = (UInt32[])target;
Run Code Online (Sandbox Code Playgroud)

无法将byte []转换为uint []

我如何将C++对数组的内存对齐转换为C#?

c# arrays bytearray uint32

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

装配将MOV/MOVZX和MOVSX转换为C代码(无内联asm)

对于asm模拟器,我正在尝试编写将ASM代码转换为等效的工作代码正常工作..最好的代码可以是一行或两三最多,不关心速度.

从我的理解.如果用C++完成MOVZX将与MOV相同.

MOV 转换.

MOV ESI,DWORD PTR [ESP+8]
Run Code Online (Sandbox Code Playgroud)

会是这样的

regs.d.esi = *(unsigned int *)(regs.d.esp+0x00000008);
Run Code Online (Sandbox Code Playgroud)

MOVZX 转换.

MOVZX EAX,BYTE PTR DS:[EDI]
Run Code Online (Sandbox Code Playgroud)

会是这样的

regs.d.eax = *(unsigned char *)(regs.d.edi);
Run Code Online (Sandbox Code Playgroud)

几乎一样的事情都没有改变.

现在MOVSX我无法转换为简单的C代码..似乎与上面的两个相同..除了它试图在尽可能多的移动前添加尽可能多的完全设置位...

000000C7FFFFFFC7

c x86 assembly transformation code-translation

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

错误C4703:使用了未初始化的本地指针变量'pNamesPtr'

我正在研究一个crypter项目,并在尝试编译程序时遇到以下错误.

main.cpp(520):错误C4703:可能未初始化的本地指针变量'pNamesPtr'使用
==========构建:0成功,1失败,0最新,0跳过==== ======

        DLLNAMES[i].UsedAlready = 0;
    }


    *dwOutSize = (DWORD)pNamesPtr - (DWORD)pBuffer;//*<----is line 520 of error
    *dwImportsSize = *dwOutSize - *dwIATSize;    
    return pBuffer;
}
#pragma pack(1)
typedef struct
Run Code Online (Sandbox Code Playgroud)

有人可以帮我解决这个错误吗?你需要更多的代码才能得到一个好的答案吗?

c++

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

2147483647即使数据类型为VARCHAR,也会插入到DB字段中

这是我们一直在敲打近一个星期的事情.

发生了什么?

  • 在我们的应用程序中,我们有一个电话号码字段,它与数据类型为VARCHAR(25)的数据库字段有关.我们不是在使用INT,BIGINT.

  • 在表单提交上,我们将数据存储如下.

    1. $_POST

    2. 使用清理数据 filter_input(INPUT_POST, 'mobile', FILTER_SANITIZE_STRING);

    3. 使用mysqli->prepare插入数据到数据库,其中绑定-PARAMS也设置正确.此字段设置为使用"s"(字符串)进行映射.

    4. 然后将数据存储到DB中.

  • 现在我们在调试问题时将所有这些值记录在单独的日志文件中.在查看日志文件时发现了最奇怪的事情.似乎数据在通过POST发送时正确出现,在卫生设施后仍然很好,在插入数据库后立即检索时仍然很好.但是当我们的前端应用程序提取相同的值以显示给用户端时,获取的数据为2147483647.

  • 所有这样的插入都不会发生这个问题,它发生得非常随机,而且很少发生,但它已经把我们带到了一个点,在那里我要拔毛以寻找解决方案.

  • 开发平台信息:PHP 5.3,MySQL 5.5.31

任何帮助将不胜感激.

这是代码:

$Mobile = filter_input(INPUT_POST, 'mobile', FILTER_SANITIZE_STRING);

$stmt = $mysqli->prepare("INSERT INTO enquiry(idAdminUsers, isConverted, Firstname, Lastname , Residence , WorkCollege , Gender , Age , Occupation , Mobile , Email , Transport , FirstMile , LastMile , Commute , NoPublicTransport , Member , YesMember , PurposeMember , NoMember , Note, Date, FirstMileCost, FirstMileTime, LastMileCost, LastMileTime, landlineNumber) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,NOW(),?,?,?,?,?)");
    if ($stmt) …
Run Code Online (Sandbox Code Playgroud)

php mysql varchar mysqli

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

从Google ReCaptcha Scraping获取Bad Captcha图像

我正在尝试加载Captcha,然后在WebBrowser控件中渲染它们然后复制/粘贴图像并将其渲染到图片框中.

为什么不立即将图片直接下载到PictureBox中,这样可以减少CPU使用率和内存,这个解决方案适用于任何其他更高级的验证码服务,称为Solve Media(如果您查看图像URL,则使用Solve Media)下次你试图查看它时,它会给你一个假的错误catpcha图像).

但是现在我需要支持ReCaptcha Captcha系统,以便以更快的速度自动化我的机器人,然后只刷新网页并等待渲染.

所以我就写我的代码在这里,据我了解,我只是缺少仿效HTML请求的属性之一,我得到了用户代理伪造作为一个真正的Internet Explorer 8,我认为这个问题是饼干看起来有点它生成一个我无法弄清楚在哪里的cookie,但我也想通过下载Javascript文件得到一个Cookie.

无论哪种方式谷歌ReCaptcha试图欺骗你一个假的Captcha,你不能阅读,在你的脸上擦你不做正确的事情.当你看到2个黑色圆圈时,我发现它显然是假的.

这是Bad Captcha和Good Captcha的一个例子

验证码好的验证码

有一次,我记得验证码了,如果你从那里它放在我不知道怎么说,因为工作我下载的一切权本地实际域加载验证码图片莫名其妙地知道其他安全功能?但他们似乎已经删除了这个功能.(实际上它存在于某些网站上似乎默认是禁用的,很容易欺骗它使用Referer标头)

我不打算在这里欺骗任何东西我仍然会手动输入这些Captcha,但是我想要更快地输入它们然后通常需要渲染页面.

我希望Captcha成为那些街道号码......或者至少2个单词没有那些黑色圆圈.

无论如何这里是我的当前代码.

Dim newCaptcha = New Captcha
Dim myUserAgent As String = ""
Dim myReferer As String = "http://www.google.com/recaptcha/demo/"
Dim outputSite As String = HTTP.HTTPGET("http://www.google.com/recaptcha/demo/", "", "", "", myUserAgent, myReferer)
Dim recaptchaChallengeKey = GetBetween(outputSite, "http://www.google.com/recaptcha/api/challenge?k=", """")

'Google ReCaptcha Captcha
outputSite = HTTP.HTTPGET("http://www.google.com/recaptcha/api/challenge?k=" & recaptchaChallengeKey, "", "", "", myUserAgent, myReferer)

'outputSite = outputSite.Replace("var RecaptchaState = {", "{""RecaptchaState"": {")
'outputSite = outputSite.Replace("};", "}}")
'Dim jsonDictionary As Dictionary(Of …
Run Code Online (Sandbox Code Playgroud)

javascript vb.net cookies recaptcha

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

CSS - Div不会留在其他Div的右侧

在这里非常简单的设置,我只是想让两个div并排坐下.图像在左侧,文本在右侧.出于某种原因,如果文本太长,它会推动div.我想让cs-summary div理解它应该包装文本,以便不像它一样跳下来:

http://jsfiddle.net/csaltyj/5Huau/

码:

<div class="container">
    <div class="cs-image">
        <img src="http://www.electroniccampus.org/school_logos/CFNC/Wake_Forest_University/Wake_Forest_University2.jpg" />
    </div>
    <div class="cs-summary">
        <p>Texty text text McTexterson likes to text. Why is div getting shoved down?</p>
    </div>
</div>
<div class="container">
    <div class="cs-image">
        <img src="http://www.electroniccampus.org/school_logos/CFNC/Wake_Forest_University/Wake_Forest_University2.jpg" />
    </div>
    <div class="cs-summary">
        <p>Super short text behaves.</p>
    </div>
</div>
Run Code Online (Sandbox Code Playgroud)

CSS:

.container {
    overflow: hidden;
    border: 2px solid #0f0;
    width: 400px;
    margin-bottom: 1em;
}

.cs-image {
    float: left;
    border: 2px solid red;
}

.cs-summary {
    font-size: 0.8em;
    border: 2px solid blue;
    float: left;
    margin-left: 1em; …
Run Code Online (Sandbox Code Playgroud)

css css-float

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