Labwindows Literacy + skills stickers, CVI learning is essential

Source: Internet
Author: User

Labwindows Literacy + skills stickers, CVI learning is essential

Http://www.vihome.com.cn/bbs/viewthread.php? Tid = 4675
Labwindows Literacy + skills stickers, CVI learning is essential
1. What are the applicable users of CVI?
(R2 p. g h $ T %? 8 Z # wcvi is a fast development environment based on ansi c and is suitable for C and C ++. Engineers who use VB, Vc, and BC controls to organize user interfaces. % S # E6 P; {8 x
* W3 x $ E; {p m-Y8 P5 y l
2. How many versions of CVI are available ?, T5 C * j 'i0 c) Z
Ni is divided into LabWindows full development system and LabWindows base development system. The price is 20450,102 RMB. 7 K % H! Q1 M6 | % Z9 I5 S1 X8 ~
Full Version rmb201_1 v %/(B7 C5 h # H

• Preferred for instrument control, data collection, and automated testing
• Complete analysis database, including curve fitting and signal processing
• Internet connection
• Call the measurement studio Program

2 @ 6 Q3 G "] 3 [8 W basic version rmb10220
$ S, A * H + @ 8 r-y
• Integrated Development Environment
• Complete professional user control group
• Instrument I/O and DAQ Assistant
• IVI driver connection
•. NET and ActiveX support

; P, O3 N3 I +? 0 ^ ,/
0 P6 Q9 | 9 _ $ G! F. |/I "F7 F-X6 K f" F1 y9 _
The latest version is version 8.11, which is the history of CVI:-W (K. I ~ 3 B # '-H * B6 v

 

, Q, E7 ?. M8 B2 ~
3. Can programs developed by CVI run?
$ M; F % s) I) ^ # D) u can. Just like all development tools, the programs written by CVI only need to provide the CVI runtime database.
% C8? : | * I't "m3? 9 T9 W + H
Z7 y! K3 x 'j9] 4. Where can I download the CVI support library? $ ?) X 'b2 U "T $ ', X
LabWindows/CVI run-time engine 8.1.1 for Windows 2000/Vista x64/Vista x86/XP
5 H0 G8 B9 N # x/a "B % | http://ftp.ni.com/support/softlib/labwindows/cvi/Run-Time%20Engines/8.1.1/NILWCVIRTE811.exe
+ J "O5 Z1 B4 y * U-j7 v j) a-g # S. E6 r$ P, o8 g
5. Do I need to manually install the support library each time?
'F; P % P0 ?, S no, the CVI program has the release function. Automatically survive all the runtime libraries required by your project.
0 C' R2 H0 | 7 h (@ 5 R4 G + T menu build -- distributions.
(G/G. H. Q-Q6 I/U (F [$ Z 'H N1 C6 n
6. Where is the information of the EXE program defined?
-? * Y: C8 W +/C']? You can change the EXE icon and copyright information under the menu build -- Build Steps. (Z $ y9} "G * D: '$ E' E

) | 8 m! T5 l! {) K % I, S7. How do beginners learn CVI? B) S2 C 'I $ K
Beginners can read these books and materials first.
2 K "'. Z, Y ,~ 6 N: Y. h $ y # O % V5 X % thttp: // www.vihome.com.cn/bbs/thread-4268-1-1.html: y9 B4 B7 S/V2 t
Http://www.vihome.com.cn/bbs/thread-3180-1-1.html. Y (W K2 _-_ 5 C (x. o
Http://www.vihome.com.cn/bbs/thread-3173-1-1.html
, V3? $ I @ 'n'; X-} 0g # E) T6 W9 H! T8 s}. u
8. Where can I download CVI ?, W'b3 @ L. S7 W
Http://www.vihome.com.cn/bbs/thread-4667-1-1.html, N $ B, C % W4 A I 'u
Http://www.vihome.com.cn/sq? UID/4829
! K1? 9 @ 7 F; _ | % K9 D #]) s B! ? /O & Y3 Q #/6'9 v
9. How to obtain system information in CVI 9 Y5 g/A0 q + N * Q6/: A1 y, y
Use the Toolbox provided by CVI: "H7 e A4 @ + F
4 J, S3 l "E) I
Getwinosversion:]: Y ('1 L7? $ Y, g (G

:~ "K4 ~ D7 _ 3 Q vgetwindowsdirs to obtain the Windows directory #} 1 O (G! ? A! _

C (E4 g, P5 W8 I % ugetdiskspace) to get the disk space size. It is useful for file storage. Determine the disk size before saving. Otherwise, a message is displayed.
9 V! Z # B (Q9 U [
: |! U6 M # U3 J8 Z, x $ @ getmemoryinfo get the memory information. * S * g #} 6 V + /! O, @ 0 l8 Z, d

0} * A2 A9 c )?; W'ngetdiskspace ("C:", totalbytes64, & freebytes64 );
) X Z, s # A. kdiskspacemb = (double) totalbytes64.hibytes * 4096. + 7 {_ (B, Q (o
(Double) totalbytes64.lobytes/1048576.; [$ [(t) f/V, p (I9 K
Freespacemb = (double) freebytes64.hibytes * 4096. +; o! A) s #} "| 5 V) P8 I
(Double) freebytes64.lobytes/1048576 ..; # I5 B # V O7 Z s "t

-U6 [. A5 F! ?; In S * y9 and CVI, how do I open other application files, such as Doc, PDF, and HLP? /Q. Z3 L. [(@; U0 M! J4 Q
Opendocumentindefaviewer Viewer ("C:/aaa.pdf", val_no_zoom); 7 [(~ 5 V2 X n

6 T9 R + O "n? U z # I1 Y. C1 X1] "O5 l0 {
10. How to use a non-Ni PCI board in CVI?
! W (H * P. x9 B 't-s: H E7 U other manufacturers do not have FP files or wizard such as Ni, but all provide DLL dynamic link library for use. Vcbc and CVI are common.
5 | 3 Q % o8 J * P. _ +} 3] 2 x # D. Z
: H $ W + J6 J/t-} 11. How to Use DLL ?, S #] 2 I t-Z & A-z/C5 g % J
DLL file and H header file, lib file. # Inlcude "header file name. H" is added to CVI. Add the *. Lib file to the project. Right-click the project and choose -- add file... to use the DLL.
: Z #~. D) y (J % B2 V5 s
9 Z # C. P0 _ 2 ^ 9] # Y12. How to Use DLL without lib files ?) F-l 'q1 K % d) [4 d "Q
Open the. h file corresponding to the DLL in the menu of CVI. Option -- generate DLL import library select the DLL file to survive the Lib file. : W-J, M! Y (D/[8 o6 [0 U! }! N

4 ^ + D0 B $ I! P1 X. M13. How can I view C code based on DLL and. H files? ^ 8 ~ 4 K7 H: |: V "?
Option -- generate DLL import source select the DLL file to survive the c file. However, the source code does not need to be considered for function definition, and no DLL cracking is available now.
5 ^ Q9? 1 s! ^ 5 H! Q "E: O9 ~ -V3 A4 t
14. How to Create a DLL program file? $ Z0 J0 D7 N + X7 l m ,/
Build -- target type -- Dynamic Link Library to save the current project as a DLL. Similarly, the static library is in the Lib format.
$}) V $ z5 V # H % t
3 E: Y $ I + p a "z) K3 F3 E15. Slow response in the runtime window. Why is the display not timely?
(L! E $ O; e) S/^ (V # fcvi is an event-driven running method that queues to respond to events. This causes display lag. You must add processsystemevent () to the function (). Of course, the effective method is to use CVI or API multithreading technology.
A4 q0 Z. C/W/t "C: | (G
6 T9 x9 M. V * w (A8 A: T16, obtain the IP address of the Local Computer in CVI "M6 h ;~ 3 {, E (X4 i7 W
You can call the gettcphostaddr function. Note that the function obtains the default IP address of the computer where the program is currently running. The gettcphostaddr function retrieves a list of all available IP addresses from the Windows operating system, but returns only the first one .. X $ A4 K "I V! T2 [-B! J3'
Similarly, if you want to obtain all the IP addresses of the computer, you can call the getalltcphostaddresses function .; [$ V0 c) x,} 9 B + G
0 o * | "D-J + M. Q6 m
17. How does CVI implement the right-click menu function? 9 I1 P0 W (C2 m
You can use the following two functions to call the edited right-click menu: 0 q. G7 ~ "M (s) B; V
Menuhandle = loadmenubar (0, "popupmenu. UIR", menubar );*{(?. Q $ S-w-V/C4 B
Runpopupmenu (menuhandle, menubar_menu1, panel, eventdata1, eventdata2, 1, 1, 1);: Q; ^; U2 I: V 'a4 v
4 {8 Q: s h * @ * u's2 R
18. How does CVI support multithreading? : K3 K "y d) Z ,? + H
CVI's support for multithreading (1) Concept
) G7 _. T: ^ # G [original post address: http://easons.blogbus.com/logs/2006/04/2366573.html#1 L, Q. Q: D (Z + G
Multithreading is not an advanced technique for Windows applications. Open your task manager, select the "process" page, and click "View"-> Select column in the menu, check Before "thread count". After confirming, you can see in the "process" page that the vast majority of programs currently running are based on more than two threads. 9 Z! Y2 H3 p -? 8 Z + y! A/G9 running u! B
So what is the concept of process threads and their relationship ?, K ,? 'F L6 u' I
Thread technology refers to the development architecture that separates a part of an application into a "Thread", so that the thread is inconsistent with the execution steps of the remaining part of the program. A thread is a special object that is part of the operating system's multi-task execution. It allows a part of an application to run independently of other objects, therefore, the general execution order of the application is separated.
(S + B # C G2 E F # l] % X2 A8 K currently mainstream Windows systems are all based on multitasking mechanisms, you can run multiple applications at the same time (the word "application" is not appropriate, and the proper saying is "process "). When an application is started, the system allocates the required memory and other resources to the application. The physical separation of memory and resources is called a process. In other words, a process is a running instance of an application. Of course, an application can start multiple processes. Each process has at least one basic thread (main thread ). Threads and data are isolated from each other in a physical region. Data declared in the process can be accessed through this thread.
''J4 S7 s o Windows OS uses a preemptible multi-task running mechanism, that is, the time slice rotation method is used to execute multiple tasks. The basic object of time slice rotation is the thread. The operating system allocates time slices for each thread so that the thread can run within this period of time. Then, the thread is interrupted and another thread is started for execution. The advantage of multithreading technology is to break down processes and generate one or more auxiliary threads outside the main thread to complete background work such as data collection, network access, and data storage.
8 n' U4 A9 F3 dcvi support for multithreading (2) Basic Principles
:] # ~ -R % @ w # |. w z; C2 s [original post address: http://easons.blogbus.com/logs/2006/05/2518754.html#5 R-T3 F1 G + N; P/F6 X6
In a typical labwindws/CVI multi-threaded program, use the lower thread to create, display, and run the user interface. In the second thread, run other time-demanding operations [3]. LabWindows/CVI provides two mechanisms to design the auxiliary threads: thread pools and asynchronous timers ), the thread pool is applicable to tasks that need to be executed consecutively multiple times or in a loop, while the asynchronous timer is applicable to tasks executed at a fixed interval (only one auxiliary thread is supported ), to use multiple auxiliary threads, you can only use the thread pool technology.
4 U $ y z/f * B5 U 'l3 | multi-thread creation % U1 ^, D-W (x, A8 t
In the thread pool mechanism, the auxiliary thread is created by calling the cmtschedulethreadpoolfunction adv function of the utility library and passing the name of the function to be run in the next thread to it, the thread pool calls this function to run in one of its threads. Based on the thread pool settings and the current status, the thread pool creates a new auxiliary thread to use an existing idle thread or wait for an active thread to idle to execute the function to be scheduled. 'T "D. S; B D7 e) m
Data security between multiple threads) C7 y; y $ q; V # B x "[) j
Data protection is a key issue that must be solved when using auxiliary threads. It is important to prevent multiple threads from simultaneously operating a variable, resulting in logical errors. In CVI, the system provides three mechanisms: thread lock (BLOCKED), thread safe variable (thread safe variables), and thread safe Queue (thread safe queues) to protect shared data, implement secure data transmission between threads. Among them, the thread-safe queue protection mechanism transmits a large amount of data, and reading and writing data do not affect each other; data transmission is based on the event mode, you can register a Data Reading and Writing callback function to call the function when the number of data in the queue reaches a specified value. A typical application based on multi-thread monitoring program is: the auxiliary thread collects and processes a large amount of data and passes it to the main thread for display. The thread security queue mechanism is the best choice.
! E6 ^/T % '. m; X6 ^ 2 @ 7 ^ $ W + w-u the writing thread packs the data to be sent to the reading thread and writes it to the data queue, the data queue adopts the first-in-first-out mode. Each time a data packet is written, the system calls the callback function specified by the read thread to process the data. After a proper queue length is selected, even if the reading thread does not complete reading of the previous data packet, the writing thread can safely write the next data to the data queue, data transmission between threads is secure and reliable.
) B X4 J2 C2] 0 q + G $ B9 t0 g monitoring control auxiliary thread
1 O; | 8 I! R "N, K monitors and controls the running of auxiliary threads, which is another key issue for multi-threaded coordinated operation. CVI provides the cmtgetthreadpoolfunc-tionattribute function to monitor the status of auxiliary threads. In the monitoring software for multi-channel and scheduled data collection, multiple auxiliary threads regularly process a task until the main thread notifies it to stop.
(L :? 8] 6 N-q) S1 {the asynchronous timer mechanism provided by CVI can easily implement the above functions, but the asynchronous timer mechanism can only create one auxiliary thread. Combining the thread pool mechanism and the timer control becomes one of the feasible options. CVI calls the callback function of the panel control in the thread that creates the panel control, that is, to run the callback function of a timer control in the auxiliary thread, the panel where the timer control is located must be created in the auxiliary thread. In this way, the main thread can be controlled by switching the timer to start or stop a task, so that multiple auxiliary threads can regularly process a task, and each thread can be timed differently.
4 E9 i7 U-_ P6 T3 Q8 N. K6 j7 ~ 5 Y: H # N % Y. S) Q. | (_
19. How to implement full screen of the CVI form? "A3 Y1]/t # a n (s! X
Getmonitorfrompanel (main, monitor); // obtain the display ID
V/X. M "w'j & egetmonitorattribute (Monitor, attr_height, height); // obtain the height) S, T # Z + B" H
Getmonitorattribute (Monitor, attr_width, width); // get the width.
, G-A (S (y! L. | 'a6 y) gsetpanelsize (main, height-25, width); // you can specify the height of the window to be removed from the taskbar) 6 q (F $ _ % F3 L1 x, u
Setpanelpos (main, 25, 0); // set the window position 2 o8 p I B. [+ C5 E2 L $ S9 ["R

+ C9 M "L; M0 t-R, W, but still can see the status bar, like the game full screen yet did not expect. I hope the webpage can be followed up .) U0 _ 7 _; K9 U4 M. E-o. D
* U g! M8 N. B .~, K
To solve N7 Y % H "M. V ^) O & P5 W
Disabletaskswitching ();
-F! G L # L/] 3 gsetpanelattribute (handle, attr_can_minimize, false); (N/K $ m' U (? /G8 W + m3 o
Setpanelattribute (handle, attr_can_maximize, false); 6 q; X % E1 Z3 _ 1 v e g. B5 M0 {
Setpanelattribute (handle, attr_close_item_visible, false); $ }! [. P4 T $ A0 E1 B. x
Setpanelattribute (handle, attr_movable, false );
"V # F-{) T! X8 B! Maid; asetpanelattribute (handle, attr_sizable, false );
3 F-X2 E: S3 // @ 5 F $ psetpanelattribute (handle, attr_system_menu_visible, false); "B //, l7 T * g "P7 ^ 6 9 k Z (H + u
Setctrlattriible (handle, panel_normal_text, attr_visible, false );
, P # E "L' [# l' T9 gsetctrlattriible (handle, panel_lockout_text, attr_visible, true );
%/# H; R1? * Q, x (gsetpanelattribute (handle, attr_window_zoom, val_maximize );
-Q # U "}! H X8 ~ (J. M "U) V + K1 V v + M & B0 n

! N7 V6 i7 L2 {'i7 P20. How do I call the MATLAB program in LabWindows?
$/"Q-R3 d' L + B + xcvi and Matlab Mixed Programming, you must first install MATLAB
% Q'f, F3 _/Q # F: U0 O. b. In CVI, create an ActiveX control server and select MATLAB automatin Server Type Library. (MATLAB must be installed before CVI to see this option), after the creation, three files will be generated, xxx. fp xxx. C and XXX. h. C and. The H file can be included in the CVI project .. The C file contains interfaces of CVI and Matlab.
3 Y (} 2 @ 5 | 7 V "I5 C7 K, including opening the Matlab function and running the Matlab function. * B # U/L8 B1 H! Y # F8 Q
-A/Q: D9 R1? 0 w) I3 d
21. How to play a Flash video in CVI? 6 y "G9? 8} 0 F8 B3 C' R0 N7 W
Install the IE Plug-in of Flash Player.
7 J. X-k @ 't0 @ B # N Implementation Method: mainly by calling ActiveX controls. You need to create an ActiveX container on the panel. 8 W, C: Q) B; y/^ */+ H
Step 1: Obtain the ActiveX control handle;
/S! O % l8 J "S1 F, Q8 C/Q; B0 {'aerrorcode = md_no_error; 7 S8 U6 H! E # V2 R2 M _ 6'
Errorcode = getobjhandlefromactivexctrl (panel, control, movie); L! E3 F6 X4 M % B0} '|
If (errorcode! = 0) * m K4 L & Z $ ~ 7} 6 F & D * Y :/
Goto error;) P3 D0 T1 R + A * H3 x + ^-y) ^
Step 2: Set the playback file path; 6 T $ R! U; M/O. p6 _,~ :}
Errorcode = shockwaveflashobjects_ishockwaveflashsetmovie (* movie, null, PATH); $ M1 h; E8 S0 H8 L .? 8 A5 m3 _
If (errorcode <0)
7 P % @ 0 z, H/I6 ~ 0 ^, p-@ goto error;
J) I & ^ $ D.] 7 B9 ^ % F Step 3: start playing the file % G0 W9 u! ~ 'W) n' K, R
Errorcode = shockwaveflashobjects_ishockwaveflashplay (* movie, null );
S 'i0 y R * C # X if (errorcode <0) 4 W; y; V5 F7 x 'K R + E: d
Goto error; H7 {$ X3 S. T * V0 ~ % L $ u
Step 4: Close the opened object handle;: R0 '.', I) g )~! E
Errorcode = ca_discardobjhandle (movie); $ B "^ (] % F % v $ R (@ O7 B ,?
$ S + K1 T $ X7 I "H
22. How To Call DLL dynamically ?! P4 B7 H (| 8 z5 y # J: L $ |
# Include <windows. h>
4 O * k # S % J * Q6 P 'M' V6 U) D1 [5 ~ # Include <ansi_c.h> + M.} 4 L4 s'. {% J *@
# Include <utility. h>: R)] 7 h (r$?
# Include <cvirte. h> )? ~ "D7 E (U $ M. C
Define according to function declaration
3 '4 M6 Z2 Q, @, K o6 @ typedef int (* lpaddfun) (char [], char []);
; '. C # X7 h) C3? (C, W-K
. Z; U) E4 B S) W4 iint main (INT argc, char * argv [])
(U B :~ 0 B (S,] {p $ G + Q9 g; Q3 R-H ({7 |-e
Void * handle = 0; $ r$ I + @: l! S. B9 U; W
Char str1 [1, 100], str2 [100];
)'! } 6 [; M # Q (I lpaddfun diskid32; G; F +/6 V % I4 V3 D6 R
Hmodule dllhandle;
! J) J! B9 B! W2 x + |) {6'7 T if (initcvirte (0, argv, 0) = 0) 6 {3x8 F9 O. j3 _ (B * Y2 P d "V4 [# ^
Return-1;/* out of memory */) x2 Q3 X1 x $ A X5 H
E-i6', X; h # R9 U0 Z2 A4 X; s
Dllhandle = loadlibrary ("D: // customer // diskid32v2.00 // diskid32.dll"); 5 J "x0 W7 W3 A; Q! Y $ ^
Diskid32 = (lpaddfun) getprocaddress (dllhandle, "diskid32 ");
5 y/H3 I # o8 D, F6 J (Q/S0 E, h.e-u: X/P' F6 m
// Execute the Function
% W) Q6 u I! P8 B: w'k8 s3/5 N F2 U + h.x9 I9 v
Release DLL-W; U; ^ 4] 8 K "K0 ~ 7 {
Freelibrary (dllhandle );
8 U4 J/X; ^ # U0 t} 8 o # O-g-| 6g

, B + O-G "N3 R1 I M23, what is the meaning of parameters set by the CVI compiler?
"|/A $ X-S8 'ubuild Options Menu default calling convention options have two options:" cdecl "and" stdcall ",
/I4/) f {$ Y4 [7 E (| stdcall Pascal cdecl difference: the order in which parameters are passed into the stack varies by G! S) G9 g/|-V4 Z
8 h t/|; Q:] 4 E0 @ 4 C (] 9 t
Directive Parameter order Clean-up Passes parameters in registers? "J2 w-J + F8}" @. F. H "x
Register left-to-right routine Yes + O $ K. K8 T2 F "z u h
Pascal left-to-right routine No4/3 P) C ^ 3 F & S8 A: E
Cdecl right-to-left caller No
6 q/| 5 m) L (s6 wstdcall right-to-left routine no
-X "y7 M6 o % isafecall right-to-left routine no
%/6 J5 T9 Z R4 p x! I) F + u + |-N) m
_ Stdcall: The parameter pressure stack is in the C language Order (from right to left), but unlike the C language, it is cleared by the caller from the stack, therefore, its compilation file is smaller than _ cdecl. _ Stdcall is the default call convention in Windows API functions. VB and VFP also use this convention.
! H $ ~ * N :?! K0' _ cdecl is the default calling method used by C language. It supports variable parameter calls such as printf. 0 @ E # G #[0 T + Z4 Q * {3 m-x
In addition, VC ++ has different name conversion methods for the two call methods.
5 L * F4? U2 Q 'Z' B: D; ^ 8 h + _
-_; P "G % P + x0 e24. how to program to create a shortcut % ^; B4 D8 U (x1 v
When I first came into contact with this problem, I found that the API provides a COM interface call, And ishelllink will allow you to create a shortcut. You need to create a shortcut on the desktop, you just need to save the shortcut to the desktop directory. However, you need to understand the calling method of this COM interface and some API usage problems, such as createshortcut, which is very cumbersome and has no results in an hour. 9 C % F # N; G; j * s/x
I gave up the above idea and started to study Desktop shortcuts. By studying the shortcuts created by batch processing, I found that when you create a corresponding one on the desktop. the URL file. Windows parses it as a shortcut.
G6 v * s: d $ '* _ assume that your target program is D:/ideasm.exe, and create a desktop shortcut for it ., K; H5 K % s, F % O) V [%? * F & U

L! I. i. ideasm corresponding to Y3 B/h. the URL file content and format are as follows (the symbol // is followed by the annotation part, not included in the file )[. d8 P4 e "F1 A]
---------------------------------------------
3 B8 U: ''H * H + N % Y $ U [internetshortcut] // flag
"C; w6 B7 T $ | $ V0 e-s, M" eurl = D:/ideasm.exe // full path File Name of the Target Program 8 D4 I6 E. x9 f, x (U6 {+ x
Iconfile = D:/ideasm.exe // set the ideasm. URL file icon below
-Q (F "O0 W0 J) ziconindex = 0 + ~ * K, y7 C # | I1 G7 s
---------------------------------------------
([: I 'h "V #} U E is saved after it is written. The file is automatically parsed as a shortcut by the system. After saving the above files on the desktop, it is equivalent to setting up a shortcut on the desktop .) /2 H2 E; J :~ % I. J: P: R
In this way, you only need to use createfile in the program to create this. URL file. The only change is the full path File Name of the Target Program (which can be obtained by the program itself ).
. @; G :? /}: A7}/h) C "S5 P
(F # [, Y, B % K-F-Y 1. You can use getwindowsdirectory to determine the system disk. For example, C :/
) R; _ 0 w! _) O )}. C #] 8} 2. The full desktop path 'C:/'+ 'documents and settings/all users/desktop '9 B. [5 C, T5 I5 '3 v. o9 v |
In summary, after obtaining the full path name of the desktop, you can spell out the full path File Name Of The. URL file you want to create. Finally, use createfile to create this file (C:/Documents and Settings/all users/desktop/ideasm. url), and then use writefile to write the content in the dotted box above to this file.
.~ 8] + '2 {O1 S. P' y-F-W

This article from the csdn blog, reproduced please indicate the source: http://blog.csdn.net/CHUKAIHUA/archive/2010/05/11/5573821.aspx

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.