vb shell函数在c#的转换
vb shell:
Private Sub AddBarcodeImages(ByVal DTab As DataTable)
If Not DTab Is Nothing Then DTab.Columns.Add("BCIMAGE", Type.GetType("System.Byte[]")) Dim r As DataRow
For Each r In DTab.Rows Try
Dim BatchNo As String = CStr(r.Item("Operator2")).Trim
Dim sFileName As String = "C:\TEMP\" & BatchNo & ".jpg" Shell("Barcode.exe " & BatchNo & "", AppWinStyle.NormalFocus, True) Dim fs As IO.FileStream = New IO.FileStream(sFileName, IO.FileMode.Open)
Dim fi As IO.FileInfo = New IO.FileInfo(sFileName)
Dim fl As Long = fi.Length
Dim lung As Integer = Convert.ToInt32(fl)
Dim imgBytes As Byte() = New Byte(lung - ) {}
fs.Read(imgBytes, , lung)
fs.Close()
r.Item("BCIMAGE") = imgBytes Dim f As IO.File
Try
f.Delete(sFileName)
Catch ex As Exception
Console.WriteLine(ex.ToString)
End Try Catch ex As Exception
'MessageBox.Show(ex.ToString)
End Try
Next
End If
End Sub
c# Process线程:
private DataTable getReportData()
{
DataTable tb = new DataTable();
tb.Columns.Add("Operator", Type.GetType("System.String"));
tb.Columns.Add("OperName", Type.GetType("System.String"));
tb.Columns.Add("Line_No", Type.GetType("System.String"));
tb.Columns.Add("SessionID", Type.GetType("System.String"));
tb.Columns.Add("IsActive", Type.GetType("System.String"));
tb.Columns.Add("IsLine", Type.GetType("System.String"));
tb.Columns.Add("logo", Type.GetType("System.Byte[]")); DataRow row;
foreach (DataRow r in ds.Tables["empd10"].Rows)
{
if (r["s_select"].ToString() == "F") continue;
if (r["ticketstatus"].ToString() != "Y") continue;
try
{
row = tb.NewRow();
row.BeginEdit();
row["Operator"] = r["empno"];
row["OperName"] = r["empname"].ToString() + r["eng_name"].ToString();
row["Line_No"] = r["teamno"];
row["SessionID"] = "";
row["IsActive"] = "";
row["IsLine"] = "";
//--------------------------------------------------条码-------------------------------------------
string BatchNo = row["Operator"].ToString().Trim();
string sFileName = @"C:\TEMP\" + BatchNo + ".jpg"; //------------------shell函数在c#的转换--------------------
Process process = new Process();
ProcessStartInfo startInfo = new ProcessStartInfo("Barcode.exe", BatchNo + "");
startInfo.WorkingDirectory = Application.StartupPath;
process.StartInfo = startInfo;
process.Start();
process.WaitForExit();//必不可少否则出现条码生成不成功的情况
//------------------shell函数在c#的转换-------------------- System.IO.FileStream fs = new System.IO.FileStream(sFileName, System.IO.FileMode.Open);
System.IO.FileInfo fi = new System.IO.FileInfo(sFileName);
long f1 = fi.Length;
int lung = Convert.ToInt32(f1);
Byte[] imgBytes = new Byte[lung];
fs.Read(imgBytes, , lung);
fs.Close();
row["logo"] = imgBytes; try
{
System.IO.File.Delete(sFileName);
}
catch (Exception ex)
{
Console.WriteLine(ex.ToString());
}
//--------------------------------------------------条码-------------------------------------------
row.EndEdit();
tb.Rows.Add(row);
}
catch (Exception ex)
{
//return null;
}
}
tb.TableName = "OM";
tb.AcceptChanges();
return tb;
}
vb shell函数在c#的转换的更多相关文章
- Shell入门教程:Shell函数详解
Shell函数类似于Shell脚本,里面存放了一系列的指令,不过Shell的函数存在于内存,而不是硬盘文件,所以速度很快,另外,Shell还能对函数进行预处理,所以函数的启动比脚本更快. 1.函数定义 ...
- Shell入门教程:Shell函数的返回值
shell函数返回值一般有3种方式: 1.return语句(默认的返回值) shell函数的返回值可以和其他语言的返回值一样,通过return语句返回. 比如: #!/bin/bash functio ...
- (转)Shell函数
Shell函数类似于Shell脚本,里面存放了一系列的指令,不过Shell的函数存在于内存,而不是硬盘文件,所以速度很快,另外,Shell还能对函数进行预处理,所以函数的启动比脚本更快. 1. 函数 ...
- Linux Shell系列教程之(十五) Shell函数简介
本文是Linux Shell系列教程的第(十五)篇,更多Linux Shell教程请看:Linux Shell系列教程 函数可以将一个复杂功能划分成若干模块,从而使程序结构更加清晰,代码重复利用率更高 ...
- Shell函数的简单应用
Shell函数的简单应用 在脚本内给函数传参: #!/bin/bash . /etc/init.d/functions CheckUrl (){ curl -I -s $ | head - } Che ...
- Shell函数语法
Shell函数语法 定义函数: function 函数名(){ 指令... } 调用函数,方法1: 函数名 调用函数,方法2: 函数名 参数一 参数二 return在函数里面使用会跳出函数并 ...
- shell 函数
1 shell函数的定义及其调用 shell函数有两种格式: function name { commands } name() { commands } 其中,name为函数名,commands为函 ...
- Shell函数:Shell函数返回值、删除函数、在终端调用函数
函数可以让我们将一个复杂功能划分成若干模块,让程序结构更加清晰,代码重复利用率更高.像其他编程语言一样,Shell 也支持函数.Shell 函数必须先定义后使用. Shell 函数的定义格式如下: f ...
- Shell函数返回值、删除函数、在终端调用函数
Shell 也支持函数.Shell 函数必须先定义后使用. Shell 函数的定义格式如下: function_name () { list of commands [ return value ] ...
随机推荐
- I.MX6 OTG set as slave device hacking
/****************************************************************************** * IMX6 OTG set as sl ...
- 查看linux安装包的版本信息-TX2
前言 新到手一块TX2板子,想要检查系统是否安装某软件及其版本. 操作命令 Cuda8.:nvcc --version Opencv:pkg-config --modversion opencv G+ ...
- 《DSP using MATLAB》Problem 3.4
代码: %% ------------------------------------------------------------------------ %% Output Info about ...
- windows下配置redis
1.首先去GitHub上下载所需文件,这里我们下载的是zip文件 https://github.com/MicrosoftArchive/redis/releases 2.解压后文件目录如下 3.启动 ...
- VisualSVN安装配置与使用
VisualSVN安装配置与使用 1. 所选服务器安装包:VisualSVN-Server-2.1.3.msi. 2. 客户端安装包:TortoiseSVN-1.6.2.16344-win32-s ...
- android调节音量——AudioManager的应用
Android中可以通过程序获取系统手机的铃声和音量.同样,也可以设置铃声和音量.android中给出了AudioManager类来实现音量获取.音量控制. 本篇基于 Android API 中的 A ...
- jquery tmpl学习资料 --{{each}} each使用
<!DOCTYPE html><html><head> <script src="Scripts/jquery-1.6.2.min.js&qu ...
- win7一键拖动生成快速启动栏
一键拖动生成快速启动工具栏 ^#x:: ;自动添加快速启动工具栏 if had_added() ExitApp ql_add() Sleep, if (is_locked()) { lock_unlo ...
- QCheckBox控件
一个QCheckBox会有2种状态:选中和为选中.它由一个选择框和一个label组成,常常用来表示应用的某些特性是启用或不启用. 在下面的例子中,我们创建了一个选择框,它的状态变化会引起窗口标题的变化 ...
- tcp端口检测
# coding=utf-8 import sys import socket import re def check_server(address, port): s = socket.socket ...