???
我在网上搜了一下JNI的文章
有一个编译时候的问题:
cl -Ic:\java\include -Ic:\java\include\win32 -LD Hello.c -Fehello.dll但出了下面的错误:
Hello.c
Hello.c(1) : fatal error C1083: Cannot open include file: 'jni.h': No such file
or directory应该怎么弄才能找到jni.h呢?
我在网上搜了一下JNI的文章
有一个编译时候的问题:
cl -Ic:\java\include -Ic:\java\include\win32 -LD Hello.c -Fehello.dll但出了下面的错误:
Hello.c
Hello.c(1) : fatal error C1083: Cannot open include file: 'jni.h': No such file
or directory应该怎么弄才能找到jni.h呢?
在$JavaHome/include/
你要把这个冬冬加到你的搜索路径里
或者
cl -I$JavaHome\include -I$JavaHomeinclude\win32 -LD Hello.c -Fehello.dllPS:你的hello.c里的函数是按照要求声明的吗?否则即使编译通过,也不能运行的
我是copy的代码
我要实现访问outlook的地址簿
现在是不是只能用c++?
我对c++不熟,以前都是用vb开发的
怎么才能快速的掌握方法实现这个功能呢?能介绍一下吗?
比如printf("Hello");就可以正常运行结果
但我在代码里面加上 MessageBeep(0); 编译就通不过
错误如下:Microsoft (R) Incremental Linker Version 6.00.8168
Copyright (C) Microsoft Corp 1992-1998. All rights reserved.
/dll
/implib:hello.lib
/out:hello.dll
Hello.obj
Creating library hello.lib and object hello.exp
Hello.obj : error LNK2001: unresolved external symbol __imp__MessageBeep@4
hello.dll : fatal error LNK1120: 1 unresolved externals去掉这条代码就能通过了,而我已经 #include <windows.h> 了
代码中应该怎么使用呢?
我的源代码是这样的:#include <jni.h>
#include "HelloWorld.h"
#include <stdio.h>
#include <windows.h>JNIEXPORT void JNICALLJava_HelloWorld_displayHelloWorld(JNIEnv *env, jobject obj)
{
printf("Hello world!\n");//在这里实现java类中定义的方法
MessageBeep(0);//调用到win本地,会发一声响
//MessageBox (NULL, TEXT ("你好,欢迎来到VC之路"), TEXT ("欢迎"), 0) ;
return;
}上面两个涉及WINDOWS的都不能运行, 但我问 写那篇文章的桂静秋
他说他可以运行编译成功,他几个朋友也可以,好晕.
要使用链接库, 应该怎么加代码呢?
是VC的工具,编译器来的吧