From 5328bcc143efdba5b735df2af0fdd56fd92b5f54 Mon Sep 17 00:00:00 2001
From: LiFan <2308045698@qq.com>
Date: 星期二, 23 七月 2024 10:43:55 +0800
Subject: [PATCH] update

---
 jrj/xframe/wobject/xaserverarg.hpp |   31 ++++++++++++++++++++++++++++---
 1 files changed, 28 insertions(+), 3 deletions(-)

diff --git a/jrj/xframe/wobject/xaserverarg.hpp b/jrj/xframe/wobject/xaserverarg.hpp
index 30dade5..e42a90e 100644
--- a/jrj/xframe/wobject/xaserverarg.hpp
+++ b/jrj/xframe/wobject/xaserverarg.hpp
@@ -1,5 +1,6 @@
 #pragma once
 #include "xnative.hpp"
+#include "xcontrol.hpp"
 
 namespace Hxsoft{ namespace XFrame
 {
@@ -38,7 +39,11 @@
 public:
 	xaserverarg(kxaserverarg* impl) :xnative(impl) {}
 	xaserverarg():xnative(Hxsoft::XFrame::IXAServerArg::CreateInstance()){}
-	xaserverarg(xaserverarg & rhs){
+	xaserverarg(xaserverarg& rhs) {
+		if(rhs.GetKXAServerArg()) rhs.GetKXAServerArg()->AddRef_();
+		this->setNativePointer(rhs.GetNativePtr());
+	}
+	xaserverarg(xaserverarg&& rhs) {
 		((kxaserverarg*)rhs.getNativePointer())->AddRef_();
 		this->setNativePointer(rhs.GetNativePtr());
 	}
@@ -63,6 +68,11 @@
 		if (rhs)rhs->AddRef_();
 		SetNativePtr(rhs);
 		return *this;
+	}
+
+	operator LPARAM()
+	{
+		return (LPARAM)this;
 	}
 
 public:
@@ -100,7 +110,7 @@
 	{
 		return ((Hxsoft::XFrame::IXAServerArg*)getNativePointer())->SetArg(argname,val,typ);
 	}
-	string GetString() //alias "?GetString@IXAServerArg@XFrame@Hxsoft@@QAEPB_WXZ"  from "xframe.dll";
+	xstring GetString() //alias "?GetString@IXAServerArg@XFrame@Hxsoft@@QAEPB_WXZ"  from "xframe.dll";
 	{
 		return ((Hxsoft::XFrame::IXAServerArg*)getNativePointer())->GetString();
 	}
@@ -125,11 +135,26 @@
 	{
 		return ((Hxsoft::XFrame::IXAServerArg*)getNativePointer())->GetArgInt((LPTSTR)argname);
 	}
-	string GetArgString(string argname) //alias "?GetArgString@IXAServerArg@XFrame@Hxsoft@@QAEPA_WPA_W@Z";
+	xstring GetArgString(string argname) //alias "?GetArgString@IXAServerArg@XFrame@Hxsoft@@QAEPA_WPA_W@Z";
 	{
 		return ((Hxsoft::XFrame::IXAServerArg*)getNativePointer())->GetArgString((LPTSTR)argname);
 	}
 
+	int SetParam(LPCTSTR pArgName, xcontrol& xc)
+	{
+		return ((Hxsoft::XFrame::IXAServerArg*)getNativePointer())->SetParam(pArgName,(LPARAM)xc.getNativePointer());
+	}
+
+	int SetParam(LPCTSTR pArgName, HWND hWnd)
+	{
+		return ((Hxsoft::XFrame::IXAServerArg*)getNativePointer())->SetParam(pArgName, (LPARAM)hWnd);
+	}
+
+	int SetParam(LPCTSTR pArgName, KXMLDOMElement ele)
+	{
+		return ((Hxsoft::XFrame::IXAServerArg*)getNativePointer())->SetParam(pArgName, ele.ptr());
+	}
+
 	int SetParam(LPCTSTR pArgName, LPARAM pValue)
 	{
 		return ((Hxsoft::XFrame::IXAServerArg*)getNativePointer())->SetParam(pArgName,pValue);

--
Gitblit v1.9.3