标签: shellexecute

如何在SELECTED打印机中打印任何文档

我想使用.net在选定的打印机中打印任何文档,如pdf,word,excel或文本文件.我已成功在默认打印机中进行此类打印.现在唯一的问题是在所选打印机中打印.

这是打印的代码.

public bool Print(string FilePath)
    {
        if (File.Exists(FilePath)) {
            if (ShellExecute((System.IntPtr )1, "Print", FilePath, "", Directory.GetDirectoryRoot(FilePath), SW_SHOWNORMAL).ToInt32() <= 32) {
                return false;
            } else {
                return true;
            }
        } else {
            return false;
        }
    }
Run Code Online (Sandbox Code Playgroud)

.net c# printing shellexecute

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

从Perl调用命令,需要查看输出

我需要从perl调用一些shell命令.这些命令需要相当长的时间才能完成,因此我希望在等待完成时看到它们的输出.

系统直到它完成的功能并没有给我任何的输出.

EXEC函数给出输出; 但是,它从那一点退出perl脚本,这不是我想要的.

我在Windows上.有没有办法实现这个目标?

perl shellexecute

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

通过Java shell执行比控制台更长的时间?

我有一个Python脚本,可以进行一些计算.当我在控制台中运行此脚本时,它需要大约7分钟才能完成,但是当我运行它时认为Java shell需要花费三倍的时间.我使用以下代码在Java中执行脚本:

this.p = Runtime.getRuntime().exec("script.py --batch", envp);

this.input = new BufferedReader(new InputStreamReader(p.getInputStream()));
this.output = new BufferedWriter(new OutputStreamWriter(p.getOutputStream()));
this.error = new BufferedReader(new InputStreamReader(p.getErrorStream()));
Run Code Online (Sandbox Code Playgroud)

您是否有任何建议为什么Python脚本在Java中运行时间比在控制台中运行三倍?

更新(29.12.2010)

计算如下:

  1. Java将数据发送到Python.
  2. Python读取数据.
  3. Python生成一个决策树---这是一个很长的操作.
  4. Python发送树已准备好的确认.
  5. Java收到确认.

后来在Java和Python之间进行了一系列通信,但只需几秒钟.

更新(29.12.2010)

感谢您的所有意见和建议.花了一个工作日才发现我的假设是错误的.我使用的代码有"bug",实际上在控制台和shell中执行了不同的计算.当我修复它时,计算时间是相同的.

简介:在控制台和Java shell中运行的脚本的计算时间几乎相同.初始化Java VM和IO通信的额外时间是微不足道的.

python java shellexecute

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

将'open'传递给ShellExecute不会在特定计算机上打开word文件

我使用ShellExecute打开文件.在2000多个用户中的一台机器上,我无法打开doc文件.用Wordpad打开docx.

Word 2010已正确安装,并且来自资源管理器的双重cliick正确打开单词,而且文档在资源管理器中显示正确的图标.请注意,所有其他文件都可以正常工作(如xls,xlsx,pdf,...)

有谁知道为什么?我checekd并"使用此应用程序打开文件"它被检查.

在代码中我检查错误,我知道错误消息是

SE_ERR_ASSOCINCOMPLETE 要么 SE_ERR_NOASSOC

(因为在这两种情况下我都显示错误"没有应用程序与文件类型相关联",所以我不知道哪个错误存在,我在客户端调试看看它,但我不认为在这种情况下它是如此重要).

有人有想法吗?这是我用来打开文件的方法:

ShellExecute(0, 'open', PWideChar(MyFilePath), '', '', SW_SHOWNORMAL);
Run Code Online (Sandbox Code Playgroud)

注意:它看起来像我的一些问题是在这台机器的Windows注册表中,它是一个几乎新鲜的Windows 7机器.

注意谁将投票结束这个问题作为关闭主题:它实际上是一个关于WinAPI的问题:为什么这个api在从资源管理器发出时不能按预期工作?所以这不是主题,特别是winapi在标签中.

windows winapi shellexecute

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

使用shellexecute命令执行.reg文件时如何避免确认消息

在我的程序中,我在启动时检查一个注册表项,如果它不存在,我在ShellExecute命令的帮助下执行位于应用程序文件夹中的reg文件.如何在执行此命令时避免获取混淆消息.有没有办法做到这一点或出于安全原因,这是不可能的?

delphi registry message shellexecute confirmation

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

使用shellexecute"printto"的参数是什么?

我正在使用Delphi的winapi ShellExecute尝试打印到用户选择的打印机而不是默认打印机.我正在尝试使用printto动词找出命令的语法.

如果我想将manual.pdf打印到IP地址为192.168.1.49的HP Laser Jet 4,那么示例shell执行语句会是什么样子?

(这只是一个例子,但如果你可以帮助我,我可以从那里拿走它)

printing delphi winapi shellexecute

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

Python 的 win32api 仅打印到默认打印机

我正在尝试将win32apiPDF 文档输出到特定打印机。

win32api.ShellExecute(0, "print", filename, '/d:"%s"' % printername, ".", 0)
Run Code Online (Sandbox Code Playgroud)

filename是文件的完整路径名,printname是我通过win32api.EnumPrinters(6).

即使printername是不同目标的名称,该文件也会发送到 Windows 默认打印机(我的期望是传递特定打印机会将命名文件发送到该打印机,而不是默认打印机)。

关于我做错了什么的任何提示?是否有不同的方式将 PDF 文件一般打印到特定打印机?除了所有其他方面,有没有办法从我的程序中临时更改默认打印机?

python printing pdf winapi shellexecute

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

如何打开服务属性对话框

我想在我的应用程序中添加一个按钮(服务的前端),它将为我的服务打开服务属性对话框(如服务mmc snapin).

打开文件属性有很多例子,但这不是我想要的.我不知道从哪里开始.

c# service dialog shellexecute windows-shell

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

Kotlin native - 执行可执行文件

我正在尝试通过 bash 执行命令,例如konanc.

在 KotlinJVM 中,这只是使用Runtime.getRuntime().exec("...")或创建Process使用ProcessBuilder,但是,这些类在 Kotlin-Native 中都不可用,因为它们是 Java 库的一部分。

我尝试在文档和 kotlin 原生 GitHub 存储库中搜索示例代码,但没有找到任何内容。

shellexecute exec kotlin kotlin-native

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

显示文件属性 &gt; 安全 &gt; 编辑(权限)

我成功实现了 如何以编程方式调用 Windows 权限对话框?及相关: 如何从 c# 显示文件属性对话框安全选项卡

    public static bool ShowFileProperties(string Filename)
    {
        SHELLEXECUTEINFO info = new SHELLEXECUTEINFO();
        info.cbSize = System.Runtime.InteropServices.Marshal.SizeOf(info);
        info.lpVerb = "properties";
        info.lpFile = Filename;
        info.lpParameters = "Security";
        info.nShow = SW_SHOW;
        info.fMask = SEE_MASK_INVOKEIDLIST;
        return ShellExecuteEx(ref info);
    }
Run Code Online (Sandbox Code Playgroud)

但是,我想像使用该对话框中的“编辑..”按钮一样进入“权限”窗口。

在此输入图像描述 ![在此输入图像描述

有任何想法吗?

c# shellexecute

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