Error: Windows SDK function returned an error. (Error code -12)
I receive this error when attempting to build an installer for my Labview application.
CDK_Item_OnDoProperties.vi.ProxyCaller >> CDK_Item_OnDoProperties.vi >> CDK_InstallerConfiguration_Editor.vi >> CDK_Build_Invoke.vi >> CDK_Engine_Main.vi >> CDK_Engine_Build.vi >> NI_MDF.lvlib:MDFDistCopyList_CopyItem.vi
Loading product deployment information
Loading product deployment information
Adding files to installer
Done adding files
Preparing to build deployment
Copying products from distributions
Copying distribution 'NI-DAQ 8.0.1' from: D:\ to: C:\DARTS\ATS_TE_Project\DARTS_NI-DAQ_HP3561A_Dynamic_Signal_Analyzer\Installer\
*** Error: Windows SDK function returned an error. (Error code -12)
The system cannot find the file specified.
*** End Error Report
Done building deployment
I was able to get the install builder to build an installer for my
Application today 6/6/07. These are the steps I performed along with good amounts of trail and error.
1) I attempted to re-install the NI-DAQ 8.0.1 drivers however I didn't
perform this because it said it remove NI products which I didn't want
removed. But it didn't tell me what it would remove.
2) Instead, I copied the entire NI-DAQ 8.0.1 distribution to a directory on my hard drive.
3) I set the NI-DAQ 8.3 install build type to FULL in install builder.
4) In install builder when prompted for the components from the NI-DAQ
8.0.1 I browsed to the NI-DAQ 8.0.1 directory on the hard drive and
also un-checked the cache box.
5) It through another error this time saying it couldn't find
C:\NI-DAQ8_0_1\8.0.1\Products\LabVIEW_Broker71\LVBroker71Deu.mst (and,
LVBroker71Fra.mst, LVBroker71jpn.mst, LVBroker1071Deu,
LVBroker1071Fra.mst, LVBroker1071jpn.mst). It also could not find the
LVBroker1071 files in the
C:\NI-DAQ8_0_1\8.0.1\Products\LabVIEW_Broker1071 directory either.
6) I performed a search for these files and they did not exist in the
NI-DAQ 8.0.1 directory on my hard drive or the 8.0.1 CD I have.
7) These files DID exist in my NI-DAQ 8.3 directory located on my hard drive.
8) I copied the LVBrokerxxxx.mst (listed in 5 above) files from the
NI-DAQ 8.3 directory on my hard drive to the corresponding location in
the NI-8.0.1 directory on my hard drive.
9) This time when I rebuilt the installer for my application the build was successful.
Additional information:
When I built my application I only selected English for language
support. In Install builder in "Dialog Information I also selected
English.
I haven't attempted to try the installer on my target yet so I'm not
quite sure how successful I really was but at least I have a installer.
Let me know if this also works for you.
Rich...
Similar Messages
-
try to create an installer in Labview 8.6. The build fail and I got this message.
CDK_CreateNewWizard_Invoke.vi.ProxyCaller >> CDK_CreateNewWizard_Invoke.vi >> CDK_InstallerConfiguration_Editor.vi
>> CDK_Build_Invoke.vi >> CDK_Engine_Main.vi >> CDK_Engine_Build.vi >> NI_MDF.lvlib:MDFBuildDist_Build.vi
Loading product deployment information
Loading product deployment information
Loading product deployment information
Loading product deployment information
Adding files to installer
Done adding files
Preparing to build deployment
Copying products from distributions
Copying distribution 'NI LabVIEW 8.6.1 Datalogging and Supervisory Control Module' from:
D:\software\application\LabView\NI.LABVIEW\NI-Labview 8.6.1 DSC Module\ to: C:\Documents and Settings\Lidaoling\桌面
\Builds\generate waveform\My Installer\
Building deployment
Copying setup files
Setting merged database information
Setting product information
Setting developer part information
Starting final build
Validating...
Copying files...
Updating files...
Creating merged database...
*** Error: Windows SDK function returned an error. (Error code -12)
*** End Error Report
Done building deploymentSolution
-
AYUDA me sale --Error code-12-- Windows SDK function returned an erro
Buenas compañeros, necesito una super ayuda ya que quiero instalar en mi laptop q tiene wind7 y me sale este error:
Error: Windows SDK function returned an error (Error code-12)
End Error Report
Por favor ayudemen con alguna solucion para poder instalar el Labview 2008 8.6, ya que necesito hacer mi tesis.
Les estare agradecido por todo, estamos en contacto y graciasTry posting in english here
Translation
I need a super help because I want to install on my laptop has wind7 q and I get this error:
Error: Windows SDK function returned an error (Error code-12)
End Error Report
Please help me with some solution to install the Labview 2008 8.6, and I need to do my thesis. -
Hi,
I use LabWindows CVI 8.5 to build the D-kit in windows xp os.when i try to build the D-kit it is throwing the following error.i have attached the error log along with this post.request to provide solution to over come this issue ASAP.it is very urgent.Thanks in advance
Regards
Parthipan
Attachments:
errorlog.txt 1 KBI have not a direct experience on distribution kit, but the error seems related to the absence of NI-DMM 3.0.2 disk in your CD reader (D: could it be the cause?
Proud to use LW/CVI from 3.1 on.
My contributions to the Developer Zone Community
If I have helped you, why not giving me a kudos? -
Error ERR-9131 Error in PLSQL function body for item default code, item=P24
Hi All,
Am getting the below error in my page 24
ORA-01403: no data found
Error ERR-9131 Error in PLSQL function body for item default code, item=P24_REQ_BY_ID
OK
I dont know what to do?:(
Suddenly am getting this error in the page.
Can anyone help me to understand why this error is coming?
Thanks & Regards,
Ramya
Edited by: 901942 on Jan 29, 2012 10:16 PMData stored in these tables is different. If Oracle says that there's no record that satisfies the WHERE condition, why do you think that it lies? It is too stupid to do that.
Therefore, you need to handle the exception. There are several ways to do it. Here are some of them.
The first one is the most obvious - EXCEPTION handling section.
DECLARE
default_value VARCHAR2(100);
BEGIN
SELECT ISID INTO default_value
FROM USER_TBL
WHERE UPPER(ISID) = UPPER(:APP_USER);
RETURN default_value;
EXCEPTION
WHEN NO_DATA_FOUND THEN
RETURN (null); -- or whatever you find appropriate
END;Another one is to use aggregate function (MAX is a good choice) as it won't return NO-DATA-FOUND, but NULL:
DECLARE
default_value VARCHAR2(100);
BEGIN
SELECT MAX(ISID) INTO default_value
FROM USER_TBL
WHERE UPPER(ISID) = UPPER(:APP_USER);
RETURN default_value;
END; -
Function returned without value Error
create or replace function dssppv.hra_find_short_path (
p_new_rgmn_grp_gid in number
,p_tail_rgmn_grp_gid in number
,p_mkt_cnfgr_gid in number
return string
is
v_rgmn_grp_path varchar2 ( 2000 );
check_step varchar2 ( 2000 );
begin
dbms_output.put_line
( 'Begin of function hra_find_short_path to Check Circular Loop : '
|| to_char ( sysdate, 'YYYY-MM-DD HH24:MI:SS' )
check_step := ' Step 1 - Circular loop Check up.';
--Checking for the circular loop
select rgmn_path || '/' || gt.rgmn_grp_nam
into v_rgmn_grp_path
from ( select min_rgmn_node
,rgmn_path
,rgmn_grp_gid
from ( select level as min_rgmn_node
,dt.rgmn_grp_gid
,dt.tail_rgmn_grp_gid
,gp.rgmn_grp_nam
,rtrim
( reverse
( sys_connect_by_path
( reverse ( gp.rgmn_grp_nam )
) as rgmn_path
from dssppv.t_market_cnfgr_rgmn_grp_dtl dt join dssppv.t_market_cnfgr_rgmn_grp gp
on ( dt.rgmn_grp_gid = gp.rgmn_grp_gid
and gp.mkt_cnfgr_gid = p_mkt_cnfgr_gid
start with dt.tail_rgmn_grp_gid = p_new_rgmn_grp_gid
connect by nocycle prior dt.rgmn_grp_gid =
dt.tail_rgmn_grp_gid )
where rgmn_grp_gid = p_tail_rgmn_grp_gid
order by min_rgmn_node )
,dssppv.t_market_cnfgr_rgmn_grp gt
where gt.rgmn_grp_gid = p_new_rgmn_grp_gid and rownum = 1;
dbms_output.put_line ( ' Circular Loop is formed as shown :'
|| v_rgmn_grp_path
if ( v_rgmn_grp_path is not null )
then
dbms_output.put_line ( ' Circular Loop is formed as shown :'
|| v_rgmn_grp_path
else
dbms_output.put_line ( ' No Loop is formed.' );
end if;
dbms_output.put_line
( 'End of function hra_find_short_path to Check Circular Loop : '
|| to_char ( sysdate, 'YYYY-MM-DD HH24:MI:SS' )
return v_rgmn_grp_path;
exception
-- when no_data_found
-- then
-- dbms_output.put_line
-- ( 'End of function hra_find_short_path to Check Circular Loop : '
-- || to_char ( sysdate, 'YYYY-MM-DD HH24:MI:SS' )
--return null;
when others
then
dbms_output.put_line
( 'Error in function DSSPPV.hra_find_short_path at: '
|| check_step
dbms_output.put_line ( sqlerrm );
dbms_output.put_line
( 'End of function hra_find_rgmn_grp_loops to Check Circular Loop : '
|| to_char ( sysdate, 'YYYY-MM-DD HH24:MI:SS' )
end hra_find_short_path;
/I purpose fully commented No Data Found Exception top check whether it was returning null when no record is found.
But it was going into no data found exception when there is no record.
But when execute sql separately it was showing zero records without raising the no data found error.
it was not even going through the if loop .... Please Correct me if i did something wrong
if ( v_rgmn_grp_path is not null )
then
dbms_output.put_line ( ' Circular Loop is formed as shown :'
|| v_rgmn_grp_path
else
dbms_output.put_line ( ' No Loop is formed.' );
end if;Hi,
Rede wrote:
Frank,
I am expecting that when no row is returned
select rgmn_path || '/' || gt.rgmn_grp_nam
into v_rgmn_grp_path
Null will be selected into v_rgmn_grp_path unless there is an exception
A SELECT INTO query must return exactly one row. If no rows satisfy the WHERE clause, then no rows are returned, and a NO_DATA_FOUND error is raised.
One way to get around this is to do an aggregate query. If you use an aggregate function (like MIN) but no GROUP BY clause, then exactly one row will always be returned, even if the table has no rows, or no rows satisfy the WHERE clause. (You've probably used this feature before, saying "SELECT COUNT(*) FROM table_x;" and getting one row, containing 0, in the result set.)
Try something like this
select MIN (rgmn_path || '/' || gt.rgmn_grp_nam)
into v_rgmn_grp_path
from ( select min_rgmn_node
,dssppv.t_market_cnfgr_rgmn_grp gt
where gt.rgmn_grp_gid = p_new_rgmn_grp_gid;Edited by: Frank Kulash on Jun 2, 2010 4:02 PM -
All Windows I Install return boot\bcd error
Have a l645d-s4040.
Im Lost now.. I've read many threads similar to my problem, or exactly like my problem. Ive tried it all, and done at least 12 Different installs. heres the info:
Bought it brand new, was unaware of making the restoration disks until it was too late.
I had a virus, so I did "clean all" in diskpart, at the cmd prompt. So i can start fresh. I have a retail version of Windows 7 Home Premium 64 bit, which was the original OS. went through the installation process fine, until the reboot where its supposed to go through the second step of the installation. on reboot i get a "bcd\boot" error. Ive tried repairing the MBR, the Boot record, ive tried using align=1024, ive tried using paragon, and acronis to fix the boot record. Ive tried using boot managers. Ive tried installing windows vista, ive tried windows 7 ultimate 64 and 32 bit versions.. the only OS i can get to install is XP.. Im at a loss
of course of done : Startup Repair (http://www.sevenforums.com/tutorials/681-startup-repair.html)
So after the first step of of installation, which goes fine then reboots to continue the installation i get:
Windows Boot Manager
Windows failed to start. A recent hardware or software change might be the cause. To fix the problem:
1. Insert your Windows installation disc and restart your computer.
2. Choose your language settings, and then click “Next.”
3. Click “Repair your computer.”
If you do not have this disc, contact your system administrator or computer manufacturer for assistance.
File: \Boot\BCD
Status: 0xc000000f
Info: An error occurred while attempting to read the boot configurations data.
Enter= Continue ESC=Exit
so i reboot with the install cd. which i downloaded from www.mydigitallife.info/windows-7-iso-x86-and-x64-official-direct- download-links-ultimate-professional-and-home-premium/.
And ran the startup repair, first time no OS found and failed to save startup options. rebooted and this time the repair worked and it booted fine running the 2nd step of the installation process.. on the reboot i got same boot\bcd error.. so i repeated the repair steps above.. it finally booted and finalized the installation.. i got to the desktop fine and installed all my drivers. when i rebooted i got the same error.
WHATS UP WITH THIS???Satellite L645D-S4040
I would restore the hard disk to its original out-of-the-box contents using Toshiba recovery media, which you can obtain from Toshiba.
Order Toshiba Recovery Media
-Jerry -
Win SDK function conflict with CVI library function
I do not have SDK_CONFLICT_PRIORITY defined. Is this new to CVI 2009?
The following code gives me an error "11, 58 Too many arguments to `CVI_WriteFile'."
#include <windows.h>
#include <formatio.h>
void function (void) {
HANDLE hHandle = INVALID_HANDLE_VALUE;
char buffer [1000] = {'\0'};
DWORD dwWriteCount;
if (!WriteFile (hHandle, buffer, 5, &dwWriteCount, NULL)) {
I have included <windows.h> before <formatio.h> but CVI still wants to use the formatio version of WriteFile - it appears to have been renamed CVI_WriteFile ?!?!?
If I eliminate the #include <formatio.h> it compiles OK.
Message Edited by menchar on 03-06-2010 04:00 PMWell, the complete source for formatio.h I reported before is this one:
#ifdef _NI_mswin32_
extern int CVIFUNC cviprefix(CloseFile)(int handle);
extern int CVIFUNC cviprefix(OpenFile)(const char *filename,int rd_wrt, int action, int bin_ascii);
extern int CVIFUNC cviprefix(ReadFile)(int handle, char *buf, int count);
extern int CVIFUNC cviprefix(WriteFile)(int handle, const char *buf, int count);
extern int CVIFUNC cviprefix(SetCommitMode)(int commit);
#define CloseFile cviprefix(CloseFile)
#define OpenFile cviprefix(OpenFile)
#define ReadFile cviprefix(ReadFile)
#define WriteFile cviprefix(WriteFile)
#define SetCommitMode cviprefix(SetCommitMode)
#else
In the header this warning is present:
/* This header must be included after any Windows SDK header or any header */
/* that directly or indirectly includes a Windows SDK header. */
/* Some of the function names conflict with Windows SDK functions. */
As far as I can understand (but I'm not an expert on these very technical and tricky aspects of C) first of all CVI functions are renamed CVI_xxx, after it a call to WriteFile or any other function in that group is defined to be translated to CVI_WriteFile, so when you call WriteFile the preprocessor actually translates it in the CVI version of the function and SDK one is superseded.
My understandment is that if you undefine WriteFile, you can actually use both functions if you want: native CVI one by calling CVI_WriteFile and SDK one by simply calling WriteFile.
...or I can be missing some other hint, which can surely be possible!
Proud to use LW/CVI from 3.1 on.
My contributions to the Developer Zone Community
If I have helped you, why not giving me a kudos? -
PL/SQL: Function returned without value in authentication schemes
Hi all,
finally i did the authentication shemes based on my function and my own table ,thank you all for help :-) ,but now when i enter
1-correct user name &wrong password <it is gonna work,the authentication workin fine >
i am gonna get <Invalid Login Credentials> which is right in case of wrong login
2-wrong user name &wrong password <it is not gonna work>
3-wrong user name &correct password <it not gonna work>
in case of not working i am getting the following error:
ORA-06503: PL/SQL: Function returned without value
Error ERR-10460 Unable to run authentication credential check function.
any help to solve this issue so that it will display <Invalid Login Credentials>
in all cases of invalid login
thanks in advance ,
Ahmed,scott,you efforts was useful and i beleive that the error that i am getting it is from the function that i have can you please take a look on :
FUNCTION CHECK_USER
( P_USERNAME IN varchar2,
P_PASSWORD IN varchar2)
RETURN boolean
IS
BEGIN
for c1 in (select user_name, password from vms2_employee_details where user_name = P_USERNAME)
loop
if P_PASSWORD = c1.password then
return true;
------dbms_output.put_line('the return from the function is true');
else
return false;
----dbms_output.put_line('the return from the function is false');
end if;
end loop;
EXCEPTION
WHEN no_data_found THEN
return false;
when others then
return false;
----dbms_output.put_line('the return from the function is false');
END;
and tell me what do you think ,
thanks,
ahmed -
ORA-06503 Function returned without value
Hi All,
I'm getting ORA-06503: PL/SQL: Function returned without value error on this function..... can u guide me where Im going wrong?
Cheers!
I
FUNCTION XX(P_Trial_No IN PATIENT_VISITS.TRIAL_NO%TYPE,
P_PATIENT_VISIT_NO IN PATIENT_VISITS.PATIENT_VISIT_NO%TYPE) RETURN NUMBER IS
L_Sequence_No Patient_Visit_Designs.Sequence_No%TYPE;
BEGIN
-- Retrieves and returns sequence Number from patient visit designs
IF p_patient_visit_no IS NOT NULL THEN
SELECT Sequence_No
INTO L_Sequence_No
FROM Patient_Visit_Designs pvd
WHERE pvd.Trial_No = P_Trial_No AND
pvd.Patient_Visit_No = P_Patient_Visit_No;
RETURN L_Sequence_No;
ELSE
RETURN NULL;
END IF;
EXCEPTION
WHEN NO_DATA_FOUND THEN
NULL;
END XX;CREATE OR REPLACE FUNCTION xx (
p_trial_no IN patient_visits.trial_no%TYPE,
p_patient_visit_no IN patient_visits.patient_visit_no%TYPE
RETURN NUMBER
IS
l_sequence_no patient_visit_designs.sequence_no%TYPE;
BEGIN
l_sequence_no := NULL;
-- Retrieves and returns sequence Number from patient visit designs
BEGIN
IF p_patient_visit_no IS NOT NULL
THEN
SELECT sequence_no
INTO l_sequence_no
FROM patient_visit_designs pvd
WHERE pvd.trial_no = p_trial_no
AND pvd.patient_visit_no = p_patient_visit_no;
END IF;
EXCEPTION
WHEN NO_DATA_FOUND
THEN
l_sequence_no := NULL;
END;
RETURN l_sequence_no;
END xx; -
Hi !
I'm looking for windows sdk help file ?
I'm using LabWindows 5.5 and I can't find
information about windows sdk functions ?
PiotrIn order to use Windows SDK files you must have CVI Full Development System, not the starter kit nor base package.
To install SDK on your hard disk you must run Custom installation: you will be prompted for a list of all installable items in which to select the appropriate options.
Hope this helps
Roberto
Proud to use LW/CVI from 3.1 on.
My contributions to the Developer Zone Community
If I have helped you, why not giving me a kudos? -
Hi,
I just downloaded and installed Labwindows/CVI 2013 full development system on my new computer.
It's a Win7 64 bit computer.
Do I have to do any additional installations to use Windows SDK functions, or is it included in the typical installation?
Thanks,
Kirk
Solved!
Go to Solution.Unless in 2013 something has changed, normally you must explicitly select the corresponding option in order to have the SDK installed. You must perform the setup again and expand the CVI item in the product tree, next select "Interface to the Win32 API" item: the appropriate libraries and include files will then be installe on your system.
Proud to use LW/CVI from 3.1 on.
My contributions to the Developer Zone Community
If I have helped you, why not giving me a kudos? -
Netsh commands in Windows SDK?
My PC has two network adapter cards and I need to implement a test that disables each of them individually. Is there a way to do the equivalent of these commands...
netsh interface show interface
netsh interface set interface "Local Area Connection" ENABLED
...using Windows SDK function calls? The only other way I know would be to run the commands using system() or LaunchExecutable, dump the results to an output file, and parse the file to see the results. I'd rather be able to do it a neater way.Hi richferrara,
You may get some more feedback on the Windows API functions by posting in the Microsoft Developer Network forums. There appears to be an Enable/Disable network card forum on the MSDN that describes several solutions to trying to implement this action.
In addition, on StackOverflow there is a fairly thorough discussion of trying to perform this action in a forum titled Programatically disable/enable network interface that discusses the complexities of platform specific implementations and behaviors of this functionality.
Milan -
UDPWrite in a loop. "A Windows Sockets function call returned an unexpected error."
Hello together,
i use UDP Support Library in NI CVI 9.0. When i wait for receiving a packet at the pc to send then a packet from the pc, the functions UDPRead and UDPWrite work fine. If i want to test the maximum throughput, i put the UDPWrite in a loop, but then an error occurs. It is "kUDP_UnexpectedWinsockError"
Error Popup:
"NON-FATAL RUN-TIME ERROR: "main.c", line 53, col 22, thread id
0x00000C18: Library function error (return value == -6822
[0xffffe55a]). A Windows Sockets function call returned an unexpected
error."
Line 53:
status = UDPWrite (channel, 60100, "192.168.1.10", pOutputBuffer, 1458);
the whole loop:
while(1)
status = UDPWrite (channel, 60100, "192.168.1.10", pOutputBuffer, 1458);
counter++;
if(counter>50)
break;
else{;}
The error occurs after 3-16 packets have been sent. If i step through the programm, no error occurs. So i guess its because the UDPWrite command is invoked too fast. pOutputBuffer has static data. I could use a delay in the loop, but then i dont know how to configure for maximal throughput.
Any ideas how to avoid this error?
Regards FlorianHello and thank you for your answer. Sorry that i reply a month later.
I dont know what you mean by "let 'er rip approach". Do you mean something like:
status = UDPWrite (channel, 60100, "192.168.1.10", pOutputBuffer, 1458);
if(status==0)
counter++;
else
Delay(0.00005);
I did not yet try to put the packet number in the payload, but there is just a 30 cm crossover cable between the two devices, no switch, no router. So the sequence should not be interruptet. And even if they arrive in chaos, i dont mind.
I have contacted the NI support 2 weeks ago, but no response yet.
I did some tests with a delay between the execution of UDPWrite(). The code:
float time = 0.0;
for(i = 1; i < 1000; i++)
status = UDPWrite (channel, 60100, "192.168.1.10", pOutputBuffer, 1458);
time = 1.0 / i;
Delay(time);
The results:
For i between 1 and 1000: no error, the speed of the last ten packets was about 6.5 MBit/s
For i between 1000 and 2000: error occured at i = 1585 (variable time in Delay was 0.0006313), the speed of the last ten packets was about 8 MBit/s
Then i put some constant values in Delay and ran 100 UDPWrite iterations:
Delay(0.0006): 7.48 MBit/s
Delay(0.0001): 10.7 MBit/s
Delay(0.00001): error occured at i=31, speed of 31 packets was 12.0 MBit/s
Delay(0.00008): 100 of 100 packets, speed 10.9 MBit/s
Delay(0.00005): error at i=41, speed of 41 packets 11.1 MBit/s -
Problem Description:
ODBC functions SQLExecDirectW and SQLExecute functions return error:”DIAG [22001] [Microsoft][SQL Server Native Client 10.0]String data, right
truncation (0) “. When we enable tracing in the ODBC administrator, in the SQL.log we see that values for the arguments: ColumnSize, BufferLength, and StrLen_or_IndPtr of ODBC function SQLBindParameter are not being displayed.
Environment Used:
OS: Microsoft Windows Server 2003 R2 Standard x64 Edition.
Complier: Microsoft Visual Studio 2008 SP1 for x64.
Database: Microsoft SQL Server 2008
MDAC: Microsoft Data Access Components SDK 2.8
Note: This problem is seen only in our 64bit application. However, in 32bit
SQLExecDirectW and SQLExecute functions return successfully.
As we could not find the values of 6<sup>th</sup>, 9<sup>th</sup> and 10<sup>th</sup> arguments(ColumnSize,
BufferLength, and StrLen_or_IndPtr) passed to
SQLBindParameter in the ODBC traces for 64bit, we are not sure whether the values for the above mentioned arguments are received correctly by SQLBindParameter or not. This information would help us to debug further. So, could you please let us know why
these values are not displayed.
1)Here is the extract of the SQL.log file for 32bit where the values for SQLULEN , SQLLEN and SQLLEN* are displayed properly:
PR0CNFG 1028-15f0 ENTER SQLBindParameter
HSTMT 0x006FBDD8
UWORD 1
SWORD 1 <SQL_PARAM_INPUT>
SWORD -8 <SQL_C_WCHAR>
SWORD -9 <SQL_WVARCHAR>
SQLULEN 23
SWORD 0
PTR 0x0595EBBA
SQLLEN 46
SQLLEN * 0x05A5FB00
2)Here is the extract of the SQL.log file for 64bit where the values for SQLULEN , SQLLEN are not displayed properly and
SQLExecDirectW function return error:”DIAG
[22001] [Microsoft][SQL Server Native Client 10.0]String data, right truncation (0) “. :
PR0CNFG a78-fe4 ENTER SQLBindParameter
HSTMT 000000000431D2F0
UWORD 1
SWORD 1 <SQL_PARAM_INPUT>
SWORD -8 <SQL_C_WCHAR>
SWORD -9 <SQL_WVARCHAR>
SQLULEN SQLULEN SWORD 0
PTR 0x0000000005364EFA
SQLLEN SQLLEN
SQLLEN * SQLLEN *
PR0CNFG a78-fe4 EXIT SQLBindParameter with return code 0 (SQL_SUCCESS)
HSTMT 000000000431D2F0
UWORD 1
SWORD 1 <SQL_PARAM_INPUT>
SWORD -8 <SQL_C_WCHAR>
SWORD -9 <SQL_WVARCHAR>
SQLULEN SQLULEN SWORD 0
PTR 0x0000000005364EFA
SQLLEN SQLLEN SQLLEN *Hi Nalsr,
From my research, I found:
"[Microsoft][ODBC SQL Server Driver]String
data right truncation" error may be returned from a call to
SQLBindParameter if the size of the string parameter being used is greater than the size of the column being compared to. In other words if the
string size of the <expression> to the left of the <comparison_operator> is less than the
string size of the <expression> to the
right, ODBC may return this error.
The resolution is to make the string size of the <expression> to the
right of the <comparison_operator> less than or equal to the
string size of the <expression> on the left.
It is difficult to track down this type of problem when third party development applications are being used. ODBC Trace can be used to help determine if this problem is occuring.
Here is an example where the customer has submitted a query "select count(*) from type1 where type1 = ?", type1 is varchar(5) and the
data type being passed by the application is char[9].
Here is the relevant portion of the trace. The following information from the "exit" of SQLDescribeParam
SWORD * 0x0095e898 (12)
UDWORD * 0x0095e880 (5)
Maps to the following with the actual value in parenthesis - SQL_VARCHAR Size 5:
SQLSMALLINT *DataTypePtr
SQLUINTEGER *ParameterSizePtr
The "exit" value from SQLBindParameter provides the following
information:
SWORD 1 <SQL_PARAM_INPUT>
SWORD 1 <SQL_C_CHAR>
SQL Data Type SWORD 12 <SQL_VARCHAR>
Parameter Size UDWORD 5
SWORD 0
Value PTR 0x0181c188
Value Buffer Size SDWORD 5
String Length SDWORD * 0x0181c103 (9)
The string length parameter is the length of the
string being bound to the parameter, in this instance there is a size mismatch which results in the SQLError and the SQLErrorW with the message "[Microsoft][ODBC SQL Server
Driver]String data
right truncation" .
Hope this could be helpful.
Best regards,
Halin Huang
Maybe you are looking for
-
How do i contact a web service using forms 6.0?
I need my application (using Forms [32 Bit] Version 6.0.8.13.0 (Production) and oracle 8) to get some informations from a web service. Does anybody have a suggestion? I thought I could make a java bean to contact the web service and then put a java b
-
Authorization object of DMS Document Number
i need to limit access of users on range of document . for example : i have created document type ZFI with number range 100 to 500 i need grant the access of a specific user to range from 100 to 300 only . How can i do that ? i need to know the auth
-
i need help to remove very shaded desktop to screen. it is very difficult to read and work with this shaded desktop
-
Exception in connection with MS sql-server2000
i have following code import java.sql.*; import java.*; class Conn2 public static void main(String args[])throws Exception Driver d=(Driver)Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance(); Connecti
-
there's no option to install the CC product. What's the deal?