|
准备用c#写一个功能稍强一点的图层管理程序,但遇到了一些问题请帮忙!
1 R1 V; D, _1 N+ K7 r9 y1 n* y: d先说往图层里写中文吧!
9 X' Y* D) M/ m7 Y( t偶然发现原来用grip可以向图层类型和描述里写中文(真是不明白为什么到c#却要限制住)6 _1 y: j# e2 R5 r. V+ \
所以用grip写了一个写入中文的程序,然后用ExecuteGrip(String, Object[])函数调用grip。0 J) D7 p# M# q4 Z1 W4 ~2 {
结果发现通过object[]传递给grip的中文字符参数,写到图层里却都变成了乱码!(很烦!!!!!!!!)0 k5 i/ D$ u6 {3 z$ d3 L
c#程序片段:- x' a' ^/ o, M4 O
public void Layerchange()
* U8 Q5 A }, h4 o+ w {
) e' e% Q- A" b s' t5 i3 ?' ^% a4 I string NAME="中文类型";4 m: Q3 h3 b: m3 C
string de = "中文描述";1 p. A5 G( \% r) C$ N" K' ^. q
double change = 2;
) L4 [6 q0 d3 L: z% ~$ i1 k; g Object [] inputargu=new Object [3];
~4 N9 r7 g* Y7 H0 ^6 ~" ^ inputargu[0] = outStr;! L% n" S# v L+ r0 K
inputargu[1] = de;
* C: w v+ L$ J" E inputargu[2] = change;
) B( | | H# \+ B, @ F" E 0 `& H/ ^, A: [$ g5 c' f* j) o- m# m
theSession.ExecuteGrip("D:\\My ugTools\\general\\application\\la.grx", inputargu);
! h/ [5 m; ~, A' M2 X% Y
# s/ I5 v( H& v! I- v: R4 n/ i6 C }) m2 c, {; z, G+ T$ z2 L
grip程序:
2 w. k! E, i6 [, K3 x% ~+ `
% }, u- U+ Y3 T5 `' X' P5 Q" b. Y3 PSTRING/NAME(30),de(80); H6 u# `% S4 [! R
NUMBER/change
% p: | R5 e* C8 L7 q0 ^0 g9 J+ Y( d* P3 \1 |
ufargs/NAME,de,change
1 C, `4 _# l/ Q. U9 `& V
4 }1 O1 y8 q& A# W) U5 N& bCAT/NAME,change,DESCR,de' X1 E8 o1 A4 O
HALT' F, d$ h* _+ e3 i: [6 c
; C S3 i, G# g6 e+ X" L( ]. t2 g. o如果单独用grip写入中文一点问题没有,所以肯定是参数传递的时候出了问题,各位兄台帮忙! |
|