小编Yam*_*our的帖子

最终启动顺序错误无法执行MI命令-gdb-set target-async off

我在eclipse上有两个项目,一个生成一个,另一个是使用它的Android应用程序我正在尝试使用本指南调试本机代码.

  1. 我设置我的应用程序可调试
  2. 我在调试模式下启动了我的应用程序
  3. 我运行ndk-gdb

当我运行本机调试器时,我得到:

Error in final launch sequence
Failed to execute MI command:
-gdb-set target-async off
Error message from debugger back end:
Cannot change this setting while the inferior is running.
Cannot change this setting while the inferior is running.
Run Code Online (Sandbox Code Playgroud)

eclipse android android-ndk

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

在设置gdb和eclipse以从Android应用程序调试共享库之后,无法访问地址0X1处的内存

我有两个Android项目:一个是库,另一个是使用此库的常规应用程序.我的目标是从Android应用程序调试共享库.我按照这个指南:

http://mhandroid.wordpress.com/2011/01/23/using-eclipse-for-android-cc-debugging/

我评论了最后一行

##$GDBCLIENT -x `native_path $GDBSETUP`
Run Code Online (Sandbox Code Playgroud)

但是以下一行

##cp -f $GDBSETUP_INIT $GDBSETUP
Run Code Online (Sandbox Code Playgroud)

抱怨信息:

it cannot stat ./libs/armeabi-v7a/gdb.setup

所以我评论了它,因为我认为Eclipse会为我上传它.除此之外,我确保:

  • 在Android.mk中我放了LOCAL_CFLAGS:= -Wall -g

  • 我在应用程序的libs库中获取.so

  • 我在应用程序中使debuggable为true

  • 修改了gdb2.setup路径,以便使用solib-search-path ./libs/armeabi-v7a/引用.so,并使用目录引用源代码

在单步执行System.LoadLibrary指令后,我执行了ndk-build-eclipse并且没有产生错误,当我开始本地调试时,我得到了:

无法访问地址0x1处的内存

在Cygwin上我得到了:

从主机0.0.0.0远程调试

这是运行ndk-gdb-eclipse命令的输出:

$ ./ndk-gdb-eclipse --adb=/cygdrive/c/Utilities/adt-bundle-windows/adt-bundle-windows/sdk/platform-tools/adb --project=/cygdrive/c/Projects/IDSmart/IDSmartApp/IDSmart  --force --port=5039 --verbose
Android NDK installation path: /cygdrive/c/Utilities/android-ndk-r8c-windows/android-ndk-r8c/.
Using specific adb command: /cygdrive/c/Utilities/adt-bundle-windows/adt-bundle-windows/sdk/platform-tools/adb
ADB version found: Android Debug Bridge version 1.0.31
Using ADB flags:
Using specified project path: /cygdrive/c/Projects/IDSmart/IDSmartApp/IDSmart
Found package name: uk.co.idscan.idsmart
ABIs targetted by application: armeabi-v7a
Device API Level: 15
Device CPU ABIs: armeabi-v7a …
Run Code Online (Sandbox Code Playgroud)

eclipse android android-ndk

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

在64位应用程序上使用com 32位库

我有一个32 com库,并希望通过64位应用程序使用它的功能,我已经在互联网上搜索并设法得到这个解决方法

  1. 在下面找到您的COM对象GUID HKey_Classes_Root\Wow6432Node\CLSID\[GUID]
  2. 找到后添加一个新REG_SZ (string)值.名称应为AppID,数据应与您刚刚搜索的COM对象GUID相同
  3. 在下添加一个新密钥 HKey_Classes_Root\Wow6432Node\AppID\
  4. 新密钥应该与com对象GUID相同
  5. 在刚添加的新密钥下,添加一个新REG_SZ (string)值,并将其命名为DllSurrogate.将值保留为
  6. 在下创建一个新密钥 HKey_Local_Machine\Software\Classes\AppID\

但它不适用于Windows 7 64位,主要问题是当我执行第6步时我发现密钥已经存在,任何机构都知道为什么?或者我怎样才能克服它?

这里的文件非常简短

c++ com com+

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

无法以随机顺序恢复活动

Android平台4.0.4 Opencv 2.4.3

我试图从相机获取快照,然后使用opencv处理它!但有时(按随机顺序)我得到以下例外

12-19 18:54:33.659: E/AndroidRuntime(16625): FATAL EXCEPTION: main
12-19 18:54:33.659: E/AndroidRuntime(16625): java.lang.RuntimeException: Unable to resume activity {com.example.superemr/com.example.superemr.MainActivity}: java.lang.RuntimeException: Failure delivering result ResultInfo{who=null, request=11, result=-1, data=Intent { act=inline-data dat=file:///mnt/sdcard/Pictures/IDSMART/IDS-1607435583.jpg typ=image/jpeg (has extras) }} to activity {com.example.superemr/com.example.superemr.MainActivity}: java.lang.NullPointerException
12-19 18:54:33.659: E/AndroidRuntime(16625):    at android.app.ActivityThread.performResumeActivity(ActivityThread.java:2464)
12-19 18:54:33.659: E/AndroidRuntime(16625):    at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:2492)
12-19 18:54:33.659: E/AndroidRuntime(16625):    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1997)
12-19 18:54:33.659: E/AndroidRuntime(16625):    at android.app.ActivityThread.handleRelaunchActivity(ActivityThread.java:3371)
12-19 18:54:33.659: E/AndroidRuntime(16625):    at android.app.ActivityThread.access$700(ActivityThread.java:127)
12-19 18:54:33.659: E/AndroidRuntime(16625):    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1162)
12-19 18:54:33.659: E/AndroidRuntime(16625):    at android.os.Handler.dispatchMessage(Handler.java:99)
12-19 18:54:33.659: E/AndroidRuntime(16625):    at android.os.Looper.loop(Looper.java:137)
12-19 18:54:33.659: …
Run Code Online (Sandbox Code Playgroud)

android opencv

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

如何从Android应用程序调试共享库[单独的项目]

我正在开发一个Android应用程序并在项目中使用密集的c ++代码,首先,我将c ++源代码放在项目中,并使用以下指南在Android应用程序中具有本机调试的NDK功能.

http://tools.android.com/recent/usingthendkplugin

但是在开发的弱点之后,我决定在独立项目中分离Native代码并使用Android应用程序中的输出SO.

我的问题我如何调试SO库,这是Android应用程序中单独项目的结果?

eclipse debugging android android-ndk

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

如何从.net位图获取本机GDI位图

我想使用Pinvoke技术在本地库中使用.net位图,本机函数具有以下原型,

int cropImage(  bool aBlocking,Gdiplus::Bitmap *aInputImage, )
Run Code Online (Sandbox Code Playgroud)

我打了下面的pinvoke

public extern int cropImage( bool blocking , Intptr bitmap ) 
Run Code Online (Sandbox Code Playgroud)

而我这样称呼它

System.Drawing.Bitmap b = new Syste.Drawing.Bitmap("Amour.jpg");
cropImage(true,b.getHitmap());
Run Code Online (Sandbox Code Playgroud)

但它不起作用,你有什么建议?

.net c++ gdi+ gdi

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

在MSVC 11上是否支持std :: thread?

我想实现一个跨平台的多线程程序并读取std确实支持通过std :: thread类进行多线程,但我不确定MSVC 11是否支持此页面 http://blogs.msdn.com/b/vcblog/存档/ 2011/09/12/10209291.aspx

关于Concurreny Memory Model的说法

内存模型:N2429使核心语言识别出多线程的存在,但似乎没有任何编译器实现(至少已经支持多线程的实现).所以这是表中的N/A.

但同时线程头确实包含在Visual Studio 2012中

所以任何人都可以帮我理解MSVC11中支持std :: thread的上下文

c++ std visual-c++ c++11 visual-studio-2012

4
推荐指数
2
解决办法
2563
查看次数

如何在 MFC 应用程序首次启动时禁用自动文档/视图创建

我有一个使用文档/视图架构的常规 MFC 应用程序。当应用程序启动时,它会自动创建一个空文档的视图。我想在启动时禁用此自动视图,并仅在用户单击“文件”菜单中的“新建文档”时显示视图。

有什么办法可以做到吗?

CMultiDocTemplate* template = new CMultiDocTemplate(IDR_DorlionTYPE,
        RUNTIME_CLASS(CDocument),
        RUNTIME_CLASS(CChildFrame), // custom MDI child frame
        RUNTIME_CLASS(CView));
    if (!CView)
        return FALSE;
Run Code Online (Sandbox Code Playgroud)

c++ mfc visual-c++

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

标签 统计

android ×4

c++ ×4

android-ndk ×3

eclipse ×3

visual-c++ ×2

.net ×1

c++11 ×1

com ×1

com+ ×1

debugging ×1

gdi ×1

gdi+ ×1

mfc ×1

opencv ×1

std ×1

visual-studio-2012 ×1