uo_ljsmcproxy.sru 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  1. $PBExportHeader$uo_ljsmcproxy.sru
  2. forward
  3. global type uo_ljsmcproxy from nonvisualobject
  4. end type
  5. end forward
  6. shared variables
  7. oleobject ins_aifmbproxy
  8. boolean ins_created = false
  9. boolean ins_connected = false
  10. boolean ins_inited = false
  11. end variables
  12. global type uo_ljsmcproxy from nonvisualobject
  13. end type
  14. global uo_ljsmcproxy uo_ljsmcproxy
  15. forward prototypes
  16. private function integer pf_init (ref string arg_msg)
  17. public function integer getproxy (ref oleobject arg_proxy, ref string arg_msg)
  18. end prototypes
  19. private function integer pf_init (ref string arg_msg);Int rslt = 1
  20. uo_reghelper ll_reghelper
  21. ll_reghelper = Create uo_reghelper
  22. IF Not ins_created THEN
  23. ins_aifmbproxy = Create oleobject
  24. ins_created = True
  25. END IF
  26. IF ins_created THEN
  27. IF Not ins_connected THEN
  28. IF ll_reghelper.ConnectToNewObject("LJServicesManagerDll.LJSMProxy", "LJServicesManagerDll.dll", ins_aifmbproxy, arg_msg) <> 1 THEN
  29. rslt = 0
  30. GOTO ext
  31. END IF
  32. ins_connected = True
  33. END IF
  34. END IF
  35. String remotehost
  36. IF ins_connected THEN
  37. IF Not ins_inited THEN
  38. remotehost = ProfileString(sys_inifilename,'longjoews','remotehost','')
  39. // remotehost = '127.0.0.1'
  40. // DONE: 连接服务器
  41. IF IsNull(remotehost) Or remotehost = '' THEN
  42. rslt = 0
  43. arg_msg = '找不到远程地址,初始化失败'
  44. GOTO ext
  45. END IF
  46. ins_aifmbproxy.SetUrl(remotehost)
  47. ins_inited = True
  48. END IF
  49. END IF
  50. ext:
  51. Destroy ll_reghelper
  52. RETURN rslt
  53. end function
  54. public function integer getproxy (ref oleobject arg_proxy, ref string arg_msg);Int rslt = 1
  55. IF pf_init(arg_msg) <> 1 THEN
  56. rslt = 0
  57. GOTO ext
  58. END IF
  59. arg_proxy = ins_aifmbproxy
  60. ext:
  61. RETURN rslt
  62. end function
  63. on uo_ljsmcproxy.create
  64. call super::create
  65. TriggerEvent( this, "constructor" )
  66. end on
  67. on uo_ljsmcproxy.destroy
  68. TriggerEvent( this, "destructor" )
  69. call super::destroy
  70. end on