100分求教:PB9下针对Unicode动态链接库如何调用

100分求教:PB9下针对Unicode动态链接库怎么调用?
pb11下调用打印机
function int StartJob(string PrintName) library 'XPS.dll' Alias for "StartJob;unicode";
ret = StartJob(arg_printname);
调用\运行没有问题.

在PB9下
function int StartJob(string PrintName) library 'XPS.dll' Alias for "StartJob;unicode";
ret = StartJob(arg_printname);
提示:bad runtime function reference 
修改为
function int StartJob(string PrintName) library 'XPS.dll' ;
ret = StartJob(arg_printname);
可调用,但是打印机不能运行.

动态链接库提供者说 XPS.dll 是Unicode类型
求教:
PB9下针对Unicode动态链接库怎么调用?

如何修改?
------解决方案--------------------
pb11默认编码格式为unicode,而pb9默认为ansi,正常的api函数都提供了以funA适应ANSI编码和funW适应unicode编码,试试把传入的参数通过string改为unicode编码,没有在pb9下尝试过只支持unicode编码的函数,你可以试试
------解决方案--------------------
在pb9下比较难实现,试试用blob

function int StartJob(blob PrintName) library 'XPS.dll' ;

blob里可以存储unicode码

或者自己用其它语言再封装一层,如VC或delphi,然后再pb调用