小编Lom*_*bas的帖子

c#使用默认应用程序和参数打开文件

使用默认应用程序打开文件的最简单方法是:

System.Diagnostics.Process.Start(@"c:\myPDF.pdf");
Run Code Online (Sandbox Code Playgroud)

但是,我想知道是否存在将参数设置为默认应用程序的方法,因为我想在确定的页码中打开pdf.

我知道如何创建新进程并设置参数,但是这样我需要指明应用程序的路径,我希望有一个可移植的应用程序而不必设置应用程序的路径每次我在其他计算机上使用该应用程序.我的想法是,我希望计算机已经安装了pdf阅读器,只说明打开了哪个页面.

谢谢.

c# file

88
推荐指数
3
解决办法
10万
查看次数

dispatch_async(dispatch_get_main_queue(),^ {...}); 等到完成?

我的应用程序中有一个场景,我想在一个方法中做一些耗费时间的任务,其中包括一些数据处理和UI更新.我的方法看起来像这样,

- (void)doCalculationsAndUpdateUIs {

    // DATA PROCESSING 1
    // UI UPDATE 1

    // DATA PROCESSING 2
    // UI UPDATE 2

    // DATA PROCESSING 3
    // UI UPDATE 3
} 
Run Code Online (Sandbox Code Playgroud)

由于耗时我想在后台线程上进行数据处理,使用,

dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, NULL), ^{
Run Code Online (Sandbox Code Playgroud)

但由于数据处理和UI更新都采用相同的方法,我只想在主线程中使用UI更新,

dispatch_async(dispatch_get_main_queue(), ^{
Run Code Online (Sandbox Code Playgroud)

最后我的方法看起来像这样,

- (void)doCalculationsAndUpdateUIs {

    // DATA PROCESSING 1 
    dispatch_async(dispatch_get_main_queue(), ^{
        // UI UPDATE 1
    });

    /* I expect the control to come here after UI UPDATE 1 */

    // DATA PROCESSING 2
    dispatch_async(dispatch_get_main_queue(), ^{
        // UI UPDATE 2
    });

    /* I expect the control …
Run Code Online (Sandbox Code Playgroud)

multithreading objective-c grand-central-dispatch ios dispatch-async

44
推荐指数
3
解决办法
11万
查看次数

在oracle数据库语句中使用ENABLE关键字的原因是什么?

我想知道在以下语句中使用ENABLE关键字的优点或用处是什么?

CREATE TABLE "EVALUATION" (
    "EVALUATION_ID" NUMBER(20, 0) NOT NULL ENABLE,
Run Code Online (Sandbox Code Playgroud)

要么

ALTER TABLE "EVALUATION"
ADD CONSTRAINT("EVALUATION_FK")
FOREIGN KEY ("CREW_ID")
REFERENCES "CREW" ("CREW_ID") ENABLE;
Run Code Online (Sandbox Code Playgroud)

对于我在文档中阅读的内容,ENABLE默认情况下处于启用状态.

我可以假设它只是为了启用以前被禁用的东西吗?

sql database oracle keyword

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