На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! Следующие правила действуют в данном разделе в дополнение к общим Правилам Форума
1. Здесь обсуждается Java, а не JavaScript! Огромная просьба, по вопросам, связанным с JavaScript, SSI и им подобным обращаться в раздел WWW Masters или, на крайний случай, в Многошум.
2. В случае, если у вас возникают сомнения, в каком разделе следует задать свой вопрос, помещайте его в корневую ветку форума Java. В случае необходимости, он будет перемещен модераторами (с сохранением ссылки в корневом разделе).

3. Запрещается создавать темы с просьбой выполнить какую-то работу за автора темы. Форум является средством общения и общего поиска решения. Вашу работу за Вас никто выполнять не будет.
4. Не рекомендуется создавать несколько несвязанных вопросов в одной теме. Пожалуйста, создавайте по одной теме на вопрос.
Модераторы: dark_barker, wind
  
> JNI Visual Studio 2015
    Всем добрый день, уважаемые.

    Нужна помощь.
    Простейшая консольная программа:
    ExpandedWrap disabled
      #include "stdafx.h"
       
      #include "jni.h"
       
      JavaVM      *g_JavaVM;
       
      char        m_ClassPath[MAX_PATH];
      TCHAR       m_JavaVMPath[MAX_PATH];
       
      int main()
      {
          _tcscpy(m_JavaVMPath, _T("D:\\SDKs\\Java\\jdk1.8.0_60\\jre\\bin\\server\\jvm.dll"));
       
          strcpy(m_ClassPath, "-Djava.class.path=");
          strcat(m_ClassPath, ".");
       
          //...........................................................................
          JNIEnv *env = NULL;
          JavaVMInitArgs vm_args;
       
          JavaVMOption options[1];
          options[0].optionString = (char *)m_ClassPath;
       
          vm_args.version = JNI_VERSION_1_8;
          vm_args.options = options;
          vm_args.nOptions = 1;
          vm_args.ignoreUnrecognized = JNI_TRUE;
       
          //---------------------------------------------------------------------------
          jint rc = JNI_CreateJavaVM(&g_JavaVM, (void **)&env, &vm_args);
          if (rc < 0)
          {
              return -1;
          }
       
          //---------------------------------------------------------------------------
          return 0;
      }

    Компилирую в режиме Debug на Visual Studio 2013 (64 bits) и запускаю. Всё нормально.
    То же самое запускаю на Visual Studio 2015 - получаю ошибку Access violation на вызове JNI_CreateJavaVM(&g_JavaVM, (void **)&env, &vm_args).
    Кто-нибудь может помочь, в чём дело?
    Заранее благодарен.

    P.S. Windows 8.1
    Сообщение отредактировано: Nit -
    0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
    0 пользователей:


    Рейтинг@Mail.ru
    [ Script execution time: 0,0567 ]   [ 16 queries used ]   [ Generated: 25.04.24, 09:59 GMT ]