小编Aus*_*tin的帖子

加密时出现OutOfMemory错误

首先,这是我得到的错误

   java.lang.OutOfMemoryError
at coderaustin.com.FileEncryptor.encryptFile(FileEncryptor.java:56)
at coderaustin.com.Main.onCreate(Main.java:41)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1069)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2751)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2803)
at android.app.ActivityThread.access$2300(ActivityThread.java:135)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2136)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:144)
at android.app.ActivityThread.main(ActivityThread.java:4937)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:521)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
at dalvik.system.NativeStart.main(Native Method)
Run Code Online (Sandbox Code Playgroud)

显然我知道错误是什么,我只是不知道如何避免它.这是我的应用程序所做的,

选择文件,然后单击"加密".很明显,从那里它需要文件,并使用此代码加密它

try {
    FileInputStream inFile = new FileInputStream(f.getAbsolutePath());
    FileOutputStream outFile = new FileOutputStream(f.getAbsoluteFile() + ".des");

    PBEKeySpec keySpec = new PBEKeySpec(text.toCharArray());
    SecretKeyFactory keyFactory = SecretKeyFactory.getInstance("PBEWithMD5AndDES");
    SecretKey passwordKey = keyFactory.generateSecret(keySpec);
    byte[] salt = new byte[8];
    Random rnd = new Random();
    rnd.nextBytes(salt);
    int iterations = 100;

    PBEParameterSpec paramaterSpec …
Run Code Online (Sandbox Code Playgroud)

java encryption android out-of-memory

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

应用程序崩溃与NSMutableArray

我对iOS很陌生,我不知道如何找到像JAVA这样体面的堆栈跟踪,所以我能找到它崩溃的原因是"sigabrt".

我知道它与我刚刚添加的代码有关.

-(void) clearGame {
    for (CCSprite *sprite in placedSprites) {
        if(sprite == nil) continue;
        [self removeChild:sprite cleanup:NO];
        [placedSprites removeObject:sprite];
    }
    placedSprites = [[NSMutableArray alloc] initWithCapacity:1000];
}
Run Code Online (Sandbox Code Playgroud)

我正在添加它的类是cocos2d中的一个层.在它的init方法中,我有

placedSprites = [[NSMutableArray alloc] initWithCapacity:1000];
Run Code Online (Sandbox Code Playgroud)

我不知道什么是错的,所以任何帮助都表示赞赏.

谢谢!

cocos2d-iphone ios

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

这容易受到SQL注入的影响

我意识到这方面已经有很多问题了.但我的方法和他们的方法不一样,所以我想知道.我想我理解SQL,但我不想冒将来犯错的风险,所以感谢任何帮助.(这只是我正在做的一个项目,不是家庭作业或任何重要的事情).

function checkLogin($username, $password) {
    $username = strtolower($username);
    connectToDatabase();
    $result = mysql_query("SELECT * FROM `users` WHERE username='$username'");
    $dbpassword = "";
while($row = mysql_fetch_array($result))
  {
    $rowuser = $row['username'];
  if($username != $row['username']) continue;
  $dbpassword = $row['password'];
  }
    if($dbpassword == "") {
        return false;
    }
    $genpass = generatePassword($password);
   return $genpass == $dbpassword;
}
Run Code Online (Sandbox Code Playgroud)

因此,用你最好的镜头打我:)我不认为我的方法尽可能高效.我不明白php足以理解$row = mysql_fetch_array($result)不幸的是在做什么.

php sql code-injection

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

如何使用C++准确获取Windows操作系统版本?

我看到的每个链接总是提到GetVersionEx,但这似乎没有用.

我的方法看起来像这样,

static int windowsVersion() {
       OSVERSIONINFO osvi;

   ZeroMemory(&osvi, sizeof(OSVERSIONINFO));
   osvi.dwOSVersionInfoSize = sizeof(OSVERSIONINFO);
   GetVersionEx(&osvi);
   return osvi.dwMajorVersion;
}
Run Code Online (Sandbox Code Playgroud)

我正在运行Windows 8,而它返回6.

如果我正在尝试准确地获取他们的Windows版本,那不是很有帮助.

注意:我还检查了所有其他变量.dwMinorVersion返回4,内部版本号返回类似8400的内容.

c++ windows version

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