小编gio*_*ozh的帖子

用sigaction处理信号

我需要用sigaction处理一些信号,但是当我编译我的代码时,我得到这个错误:

警告:从不兼容的指针类型分配

代码是:

struct sigaction hup_act;
...
hup_act.sa_flags=SA_SIGINFO;
hup_act.sa_sigaction = sighupHandler;
sigaction(SIGHUP, &hup_act, NULL);
Run Code Online (Sandbox Code Playgroud)

警告在hup_act.sa_sigaction分配上.当我将sighup发送到我的应用程序时,此警告会导致分段错误.

c unix signals

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

Openssl for RSA:对RSA_new的未定义引用

我今天开始探索RSA的openSSL api.这是简单的代码:

#include<stdio.h>
#include<openssl/rsa.h>
#include<openssl/engine.h>
int main() {
    RSA *rsa;
    rsa = RSA_new_();
    RSA_free(rsa);
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

我正在编译

gcc -I/usr/local/ssl/include -o等等

但是gcc返回了对RSA_new和RSA_free的未定义引用的错误.我检查了rsa.h头文件,并没有引用这两个函数.怎么了?我遵循openssl网站上的参考指南......

编辑:gcc输出:

gcc -I/usr/local/ssl/include/-o rsa rsa.c -L/usr/local/ssl/lib -lcrypto /usr/local/ssl/lib/libcrypto.a(dso_dlfcn.o):功能dlfcn_globallookup': dso_dlfcn.c:(.text+0x1d): undefined reference todlopen'dso_dlfcn.c :(.text + 0x33):对dlsym' dso_dlfcn.c:(.text+0x3d): undefined reference todlclose的未定义引用'/usr/local/ssl/lib/libcrypto.a(dso_dlfcn.o):在函数dlfcn_bind_func': dso_dlfcn.c:(.text+0x3b1): undefined reference todlsym'dso_dlfcn.c :(.text + 0x490) :对dlerror' /usr/local/ssl/lib/libcrypto.a(dso_dlfcn.o): In functiondlfcn_bind_var的未定义引用':dso_dlfcn.c :(.text + 0x511):对dlsym' dso_dlfcn.c:(.text+0x5f0): undefined reference todlerror'/ dlfcn_load': dso_dlfcn.c:(.text+0x667): undefined reference tousr /local/ ssl/lib/libcrypto.a(dso_dlfcn.o)的未定义引用:在函数dlopen'dso_dlfcn.c :( .text + …

c unix openssl

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

如何在一定的延迟时间后隐藏 ActionBar 和 NavigationBar?

几秒钟后,我会隐藏我的应用程序的导航栏和操作栏,显示不会被触摸,并将当前视图扩展到全屏。然后,如果用户触摸屏幕(或者向下滑动更好),则再次使两者可见。如何?

android delay android-actionbar android-navigation

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

如果设备有NFC读卡器,请以编程方式检查

有没有办法在运行时检查设备是否有NFC读卡器?我的应用程序使用NFC执行任务,但如果没有阅读器,则可以使用按钮执行相同的任务.

android nfc

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

android studio:无法解析HttpClientBuilder

我在Android工作室面临一个奇怪的问题.我正在使用apache库来进行一些http请求,我需要更改

org.apache.http.impl.client.DefaultHttpClient;
Run Code Online (Sandbox Code Playgroud)

不赞成使用

org.apache.http.impl.client.HttpClientBuilder;
Run Code Online (Sandbox Code Playgroud)

但android工作室没有找到那个包.我能怎么做?

apache android android-studio

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

C unix,套接字上的非对称加密

我在C unix中有一个客户端/服务器应用程序,我需要使用类似RSA(但不一定是RSA)的加密/解密数据。是否有用于此类功能的库(及相应的文档)?

c unix sockets encryption

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

DialogFragment参数和nullpointer异常

我的类应该将参数传递给DialogFragment,但是我的应用程序在onCreate方法(对话框类)中崩溃,导致NullPointerException.Dialog片段类代码部分:

public class ConfirmDialog extends DialogFragment {

public ConfirmDialog() {}

 ConfirmDialog newInstance(String f) {
    ConfirmDialog d = new ConfirmDialog();

    Bundle args = new Bundle();
    args.putString("FILE_NAME", f);
    d.setArguments(args);

    return d;
}

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    file = getArguments().getString("FILE_NAME");
}
Run Code Online (Sandbox Code Playgroud)

我在这一行有nullpointer:

file = getArguments().getString("FILE_NAME");
Run Code Online (Sandbox Code Playgroud)

我不知道为什么.我也粘贴代码调用对话框

private void showConfirmDialog(String file) {
    FragmentManager fm = getSupportFragmentManager();
    ConfirmDialog dialog = new ConfirmDialog();
    Log.i("SHOWFILEACTIVITY", file);
    dialog.newInstance(file);
    dialog.show(fm, "fragment_confirm_dialog");
}
Run Code Online (Sandbox Code Playgroud)

这里的"文件"字符串不为空,我已经检查过了

Log.i("SHOWFILEACTIVITY", file);
Run Code Online (Sandbox Code Playgroud)

android nullpointerexception android-dialogfragment

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

PSQLException:此ResultSet已关闭

我一生中第一次遇到这个奇怪的错误,我不知道这意味着什么。我有一个类,它从PostgreSQL数据库上的表中检索信息,进行一些操作并返回带有已解析元素的arraylist:

ResultSet rs = ProduttoreDCS.getProduttori();
        System.out.println("Recuperato result set produttori");
        ArrayList<String[]> res = new ArrayList<String[]>();


        while (rs.next()) {
            String[] current = new String[6];

            current[0] = Integer.toString(rs.getInt("partita_iva"));
            current[1] = rs.getString("nome");
            current[2] = rs.getString("cognome");
            current[3] = rs.getString("via_sede");
            current[4] = rs.getString("citta_sede");
            current[5] = rs.getString("provincia_sede");

            res.add(current);
            current = null;
        }

        return res;
Run Code Online (Sandbox Code Playgroud)

错误在“ while”行上。

public static ResultSet getProduttori() throws ClassNotFoundException, SQLException {
    /*
     * retrieve all record from produttori table
     */
    Connection conn = null;
    ResultSet res = null;
    Statement stmt = null;
    String query …
Run Code Online (Sandbox Code Playgroud)

java postgresql exception resultset

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

angular2:如何在运行时创建的组件上使用EventEmitter?

在我的Angular应用程序中,我有一个父模块与其他子模块一起填充.我的子模块有这个模板:

<input type="radio" class="form-control"
[checked] = "message.default == 1"
[value] = "message.default"
(change)="onSelectionChange(message)"
name="default" >
Run Code Online (Sandbox Code Playgroud)

这是ts:

export class MessageComponent implements OnInit {
    message: MessageInterface;
    @Output() onCheckedChange = new EventEmitter<MessageInterface>();

    constructor() { }

    ngOnInit() {
    }  

    onSelectionChange(message: MessageInterface) {
        this.onCheckedChange.emit(message); 
    }
}
Run Code Online (Sandbox Code Playgroud)

这是我的父模板

<div #placeholder  ></div>
Run Code Online (Sandbox Code Playgroud)

和ts

export class ParentComponent implements OnInit {
    @ViewChild('placeholder', {read: ViewContainerRef}) placeHolder;

    ngOnInit() {
        for(let i=0; i<this.aVariable; i++) {
            let factory = this.componentFactoryResolver.resolveComponentFactory(ChildComponent);
            this.placeHolder.createComponent(factory);
        }
    }

    onCheckedChange(message: MessageInterface) {
      console.log("parent intercept");
    }
Run Code Online (Sandbox Code Playgroud)

其中"aVariable"变量是从我调用的服务返回的值.

当我点击radiobutton时,没有显示日志消息,似乎父节点没有收到EventEmitter发射.怎么了?

eventemitter angular

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

在DialogFragment内的按钮上设置onclicklistener

我有这部分代码用于对话片段

public class DialogOne extends DialogFragment  {
private Button b;

public DialogOne() {}

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
    View view = inflater.inflate(R.layout.dialog_one, container);
    getDialog().setTitle("Titolo del dialog");
    b = (Button)getDialog().findViewById(R.button.ok);
    b.setOnclickListener(new OnClickListener() {
                @Override
                public void onClick(View v) {
                    getDialog().dismiss();
                }
            });

    return view;
}
Run Code Online (Sandbox Code Playgroud)

所以当我按下按钮时,必须关闭对话框碎片.当我运行应用程序时,我在该行上的NullPoinerException包含新的OnClickListener.我该如何解决?

> 02-28 21:05:44.623: E/AndroidRuntime(8487): FATAL EXCEPTION: main
02-28 21:05:44.623: E/AndroidRuntime(8487): java.lang.NullPointerException
02-28 21:05:44.623: E/AndroidRuntime(8487):     at com.example.dialogs.DialogOne.onActivityCreated(DialogOne.java:37)
02-28 21:05:44.623: E/AndroidRuntime(8487):     at android.support.v4.app.Fragment.performActivityCreated(Fragment.java:1468)
02-28 21:05:44.623: E/AndroidRuntime(8487):     at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:931)
02-28 21:05:44.623: E/AndroidRuntime(8487):     at …
Run Code Online (Sandbox Code Playgroud)

android nullpointerexception android-dialogfragment

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