dll名称是ulesignature.dll        
在 aspx中是怎样写的:
string ulesignature = Hmacmd5.getUleSignature(requestsignparameter, "xxxxxxx");请问在delphi 怎样调用

解决方案 »

  1.   

    c#文件:
    using System;
    using System.Collections;
    using System.Configuration;
    using System.Data;
    using System.Web;
    using System.Web.Security;
    using System.Web.UI;
    using System.Web.UI.HtmlControls;
    using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
    using ule.tomshopping.signature;
    public partial class test_getorder : System.Web.UI.Page
    {
        public string appserver = "http://sandbox.tom.com/api/";
        protected void Page_Load(object sender, EventArgs e)
        {    }
        protected void bt_get_Click(object sender, EventArgs e)
        {
            string requestparams = "startTime=&endTime=&orderStatus=&itemSKU=test001&pageNo=1&pageSize=10&format=2";
            string targetUrl = appserver + "merchant/orderTradesGet.do?" + requestparams;
            string pagesource = HttpUtil.getPageSource(targetUrl);
            Response.Write(pagesource);
        }    protected void bt_UpdateStoreage_Click(object sender, EventArgs e)
        {
            string requestsignparameter = "itemSku=010100080010601&itemStorage=5";
            //需要加密的字符串
            string ulesignature = Hmacmd5.getUleSignature(requestsignparameter, "93b422a66c824c949da306dbb675ea1a");
            //加密算法,Hmacmd5.getUleSignature,参数包括需要加密的字符串和加密密钥(appSecret)//邮乐分配
            string requestparams = "itemSku=CNG00105&itemStorage=5&sign=" + ulesignature;
            //需要传递的参数
            string targeturl = appserver + "merchant/itemStorageUpdateBySKU.do?" + requestparams;
            string pagesource = HttpUtil.getPageSource(targeturl);
            Response.Write(pagesource);
        }
        protected void bt_updateDispatchedStatus_Click(object sender, EventArgs e)
        {
            string requestsignparameter = "orderNumber=100001755_160&packageCode=SUER4567&itemWeight=80&deliveryTime=2010-07-18 15:00:00&orderStatus=5";
            //需要加密的字符串
            string ulesignature = Hmacmd5.getUleSignature(requestsignparameter, "xxxxxxx");
            //加密算法,Hmacmd5.getUleSignature,参数包括需要加密的字符串和加密密钥(appSecret)
            string requestparams = "orderNumber=100001755_160&packageCode=SUER4567&itemWeight=80&deliveryTime=2010-07-18 15:00:00&orderStatus=5&sign=" + ulesignature;
            //需要传递的参数
            string targeturl = appserver + "merchant/merchant/orderDispatchUpdate.do?" + requestparams;
            string pagesource = HttpUtil.getPageSource(targeturl);
            Response.Write(pagesource);
        }
        protected void bt_cancelTradeOrder_Click(object sender, EventArgs e)
        {
            string requestsignparameter = "orderNumber=100001755_160&cancelReason=testing";
            //需要加密的字符串
            string ulesignature = Hmacmd5.getUleSignature(requestsignparameter, "xxxxxxx");
            //加密算法,Hmacmd5.getUleSignature,参数包括需要加密的字符串和加密密钥(appSecret)
            string requestparams = "orderNumber=100001755_160&cancelReason=testing&sign=" + ulesignature;
            //需要传递的参数
            string targeturl = appserver + "merchant/merchant/orderTradeCancel.do?" + requestparams;
            string pagesource = HttpUtil.getPageSource(targeturl);
            Response.Write(pagesource);
        }    protected void bt_getReturnOrders_Click(object sender, EventArgs e)
        {
            string requestparams = "startTime=&endTime=&itemSKU=&itemSKU=&pageNo=1&pageSize=10&format=2";
            string targetUrl = appserver + "merchant/orderRefundsGet.do?" + requestparams;
            string pagesource = HttpUtil.getPageSource(targetUrl);
            Response.Write(pagesource);
        }
        protected void bt_updateReturnOrderFeedback_Click(object sender, EventArgs e)
        {
            string requestsignparameter = "orderNumber=100008766_1&itemSKU=test003&itemQty=1&itemStatus=S001&confirmCode=C001&confirmTime=2010-07-18 15:00:00&reasonCode=R003&appFlag=C001";
            //需要加密的字符串
            string ulesignature = Hmacmd5.getUleSignature(requestsignparameter, "xxxxxxx");
            //加密算法,Hmacmd5.getUleSignature,参数包括需要加密的字符串和加密密钥(appSecret)
            string requestparams = "orderNumber=100008766_1&itemSKU=test003&itemQty=1&itemStatus=S001&confirmCode=C001&confirmTime=2010-07-18 15:00:00&reasonCode=R001&appFlag=C001&appReason=R001&sign=" + ulesignature;
            //需要传递的参数
            string targeturl = appserver + "merchant/merchant/orderRefundFBUpdate.do?" + requestparams;
            string pagesource = HttpUtil.getPageSource(targeturl);
            Response.Write(pagesource);
        }
    }
      

  2.   

    library ProInfoDll;procedure DLLUnloadProc(Reason: Integer); register;
    begin
      if Reason = DLL_PROCESS_DETACH then  Application:=DllApplication;
    end;exports
       ProvaChild;begin
       DllApplication:=Application;
       DLLProc := @DLLUnloadProc;
    end.
      

  3.   

    procedure TForm9.ToolButton2Click(Sender: TObject);
    var
       DllHandle: THandle;
       ProcAddr: FarProc;
       ProvaChild: T_ProvaChild;
    begin
      Panel1.Visible:=False;
      Panel2.Visible:=False;
      DllHandle := LoadLibrary('ProInfoDll');
       ProcAddr := GetProcAddress(DllHandle, 'ProvaChild');
       if ProcAddr <> nil then
       begin
          ProvaChild := ProcAddr;
          ProvaChild(Application,Self);
       end;end;