亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? writing nt service using vb6-vb5.htm

?? VB6實現Windows服務
?? HTM
?? 第 1 頁 / 共 2 頁
字號:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0037)http://www.smsoft.ru/en/ntservice.htm -->
<HTML><HEAD><TITLE>Writing NT service using VB6/VB5</TITLE>
<META http-equiv=Content-Type content="text/html; charset=iso-8859-1"><LINK 
href="Writing NT service using VB6-VB5.files/common.css" type=text/css 
rel=stylesheet>
<STYLE type=text/css>SPAN.Keyword {
	FONT-WEIGHT: bold; COLOR: #000080
}
SPAN.FunctionName {
	FONT-WEIGHT: bold; COLOR: #800000
}
SPAN.QA {
	FONT-SIZE: 16pt
}
SPAN.Q {
	FONT-SIZE: 16pt; COLOR: #800000
}
SPAN.A {
	FONT-SIZE: 16pt; COLOR: #008000
}
</STYLE>

<META content="MSHTML 6.00.2800.1458" name=GENERATOR></HEAD>
<BODY>
<TABLE class=HeaderTable summary="">
  <TBODY>
  <TR>
    <TD class=ToHome>
      <TABLE class=Button summary="">
        <TBODY>
        <TR>
          <TD class=ButtonL></TD>
          <TD class=ButtonM><A href="http://www.smsoft.ru/en/index.htm"><IMG 
            height=24 alt="" hspace=4 
            src="Writing NT service using VB6-VB5.files/home.gif" width=24 
            vspace=4 border=0></A></TD>
          <TD class=ToHomeCaption noWrap><A 
            href="http://www.smsoft.ru/en/index.htm">To Main Page</A></TD>
          <TD class=ButtonR></TD></TR></TBODY></TABLE></TD>
    <TD width="100%"></TD>
    <TD class=ViewIn noWrap>
      <P class=Small><A href="http://www.smsoft.ru/ru/ntservice.htm" 
      target=_top><IMG height=20 alt="" 
      src="Writing NT service using VB6-VB5.files/russian.gif" width=32 
      align=top vspace=6 border=0></A><BR><A 
      href="http://www.smsoft.ru/ru/ntservice.htm" target=_top>View in 
      Russian</A></P></TD></TR></TBODY></TABLE><BR>
<TABLE class=ContentTable summary="">
  <TBODY>
  <TR>
    <TD class=CaptionLL></TD>
    <TD class=Caption>
      <TABLE class=ContentTable summary="">
        <TBODY>
        <TR>
          <TD class=CaptionImage><IMG height=32 alt="" hspace=0 
            src="Writing NT service using VB6-VB5.files/bas.gif" width=32 
            border=0></TD>
          <TD class=CaptionText noWrap>Writing NT service using VB6/VB5</TD>
          <TD class=CaptionNote></TD>
          <TD class=CaptionR></TD></TR></TBODY></TABLE></TD>
    <TD class=CaptionRR></TD></TR>
  <TR>
    <TD class=FrameUUL></TD>
    <TD class=FrameUU></TD>
    <TD class=FrameUUR></TD></TR>
  <TR>
    <TD class=FrameL></TD>
    <TD class=Window>
      <TABLE class=Contents summary="">
        <TBODY>
        <TR>
          <TD class=WindowText>
            <P>It is known, that Visual Basic isn't most appropriate tool for 
            developing of Windows NT/2000/XP services. The problem is, for 
            service development is necessary to use API function <SPAN 
            class=FunctionName>CreateThread</SPAN>, which is not supported 
            nether in VB5, nor in VB6. VB allows creation of multi-thread 
            programs, but not using <SPAN class=FunctionName>CreateThread</SPAN> 
            function. VB5 utilizes <SPAN class=Keyword>Err</SPAN> object, common 
            for all threads created by <SPAN 
            class=FunctionName>CreateThread</SPAN> function. It is inadmissible, 
            because values of this object may be changed from different threads 
            in unpredictable order, and ever simultaneously on multi-processor 
            computers. On the contrary, VB6 uses Thread Local Storage (TLS) for 
            <SPAN class=Keyword>Err</SPAN> object (and not only for it), but TLS 
            isn't initialized when <SPAN class=FunctionName>CreateThread</SPAN> 
            function creates new thread, and therefore, after simple 
            recompilation of the program in VB6 it doesn't work at all (rather, 
            it works only being compiled in p-code with common <SPAN 
            class=Keyword>Err</SPAN> object).</P>
            <P>Matthew Curland suggested rather complicated method of threads 
            creation in VB (see links), but for purpose of service development 
            more simple solution may be applied. The program will work without 
            TLS, if in new thread used only arithmetic operators and API 
            functions, declared in type library, and <SPAN 
            class=Keyword>Err</SPAN> object isn't used at all. It is well known 
            that the properties of <SPAN class=Keyword>Err</SPAN> object became 
            changed in two cases: when occurs Run-Time error (<SPAN 
            class=Keyword>Err.Number</SPAN>) and after every API call (<SPAN 
            class=Keyword>Err.LastDllError</SPAN>). The first may be avoided by 
            writing error-free code, the second - by declaring API calls in Type 
            Library (API functions declarations must not contain <SPAN 
            class=FunctionName>usesgetlasterror</SPAN> attributes, therefore 
            type libraries from the popular Bruce McKinney's book are not 
            suitable). Functional part of the service must work in main thread, 
            and above limitations doesn't apply to it. This approach must work 
            both in VB6 and VB5.</P>
            <P>Of course, you can use free NTSVC.OCX control from Microsoft to 
            create your service, and this way is simple and reliable, but it has 
            one disadvantage: you can't set "Unattended execution" option for 
            it. You can't use any OCX controls when "Unattended execution" is 
            set while this mode is preferable for service. In addition, because 
            this control distributed in form of source code, there are some 
            incompatible compiled versions of it.</P>
            <P>This sample is written using VB6 without any external components. 
            As service is compiled for unattended execution, it has no visual 
            interface. Use Event Viewer to read messages written by the service 
            to the Application Log.</P>
            <P>The functional part of service (which is absent in this sample) 
            must be driven by the events from Service Dispatcher. All events 
            must be processed during few seconds, otherwise the service will be 
            unable to respond on requests from Service Dispatcher.</P>
            <P>See also:</P>
            <P>Microsoft Knowledge Base <A 
            href="http://support.microsoft.com/support/kb/articles/Q137/8/90.ASP" 
            target=_blank>Q137890</A>, <A 
            href="http://support.microsoft.com/support/kb/articles/Q170/8/83.ASP" 
            target=_blank>Q170883</A>, <A 
            href="http://support.microsoft.com/support/kb/articles/Q175/9/48.ASP" 
            target=_blank>Q175948</A>,</P>
            <P><A 
            href="http://msdn.microsoft.com/library/techart/msdn_ntsrvocx.htm" 
            target=_blank>An OLE Control for Creating Win32 Services in Visual 
            Basic,</A></P>
            <P><A href="http://www.microsoft.com/msj/0298/service.htm" 
            target=_blank>Manipulate Windows NT Services by Writing a Service 
            Control Program,</A></P>
            <P><A 
            href="http://www.pinnaclepublishing.com/VB/VBmag.nsf/0/2496CE0A783BE738852568E000549E0B" 
            target=_blank>Creating an Agent NT Service with VB,</A></P>
            <P><A href="http://vbwire.com/advanced/howto/service.asp" 
            target=_blank>How-To Run Your Application as a Service,</A></P>
            <P><A href="http://vbwire.com/advanced/howto/service2.asp" 
            target=_blank>How-To Run Your Application as a Service - Part 
            II,</A></P>
            <P>Matthew Curland's article <A 
            href="http://www.fawcette.com/archives/premier/mgznarch/vbpj/1999/06jun99/bb0699.pdf" 
            target=_blank>"Create Worker Threads in DLLs"</A> in June/1999 issue 
            of <A href="http://www.fawcette.com/vsm" target=_blank>"Visual Basic 
            Programmer's Journal"</A>.</P></TD></TR>
        <TR>
          <TD class=WindowText 
          style="BORDER-TOP: #9d9da1 1px solid; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; TEXT-ALIGN: left; BORDER-RIGHT-WIDTH: 0px"><BR><SPAN 
            class=QA>Updates of source code:</SPAN><BR><BR><U>06 June 
            2004</U><BR><BR>1. All API functions calls except GetVersionEx 
            changed to Unicode versions, in code and in type library. Added new 
            Enum members to type library to support new Windows 2000 control 
            codes.<BR><BR>2. Added MsgWaitObj function to prevent blocking of 
            messages processing. All calls of WaitForSingleObject and 
            WaitForMultipleObjects in Sub Main replaced with MsgWaitObj.</TD></TR>
        <TR>
          <TD class=WindowText 
          style="BORDER-TOP: #9d9da1 1px solid; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; TEXT-ALIGN: left; BORDER-RIGHT-WIDTH: 0px"><BR><SPAN 
            class=Q>Questions</SPAN> <SPAN class=QA>and</SPAN> <SPAN 
            class=A>Answers:</SPAN><BR><BR><SPAN class=Q>Q:</SPAN> Is there any 

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美日韩精品系列| 激情综合五月婷婷| 91在线精品一区二区三区| 久久亚洲综合av| 另类综合日韩欧美亚洲| 欧美日韩国产小视频在线观看| 亚洲欧美综合色| 风间由美性色一区二区三区| 久久久精品国产99久久精品芒果| 欧美a级一区二区| 欧美一区二区三区日韩| 亚洲成人动漫在线观看| 欧洲激情一区二区| 午夜视黄欧洲亚洲| 欧美日本视频在线| 奇米一区二区三区av| 日韩一卡二卡三卡国产欧美| 久久精品国产一区二区三| 日韩欧美国产三级| 久久91精品国产91久久小草 | 国产一区二区伦理| 91精品国产日韩91久久久久久| 亚洲欧美一区二区三区国产精品 | 国产色产综合产在线视频| 国产成人在线免费| 国产精品欧美久久久久无广告| 成人精品视频一区| 亚洲精品中文字幕乱码三区| 色综合视频在线观看| 一区二区高清免费观看影视大全 | 国产精品久久毛片av大全日韩| 波波电影院一区二区三区| 成人欧美一区二区三区白人| 91免费观看国产| 亚洲成人av福利| 精品日韩欧美一区二区| 风间由美性色一区二区三区| 一区二区三区精品视频| 日韩三级视频在线看| 国产精品一二三区在线| 亚洲在线免费播放| 欧美一级二级三级乱码| 奇米精品一区二区三区在线观看一| 欧美大片顶级少妇| 国产乱对白刺激视频不卡| 亚洲少妇屁股交4| 欧美一区二区三区免费观看视频 | 亚洲啪啪综合av一区二区三区| 在线看国产日韩| 狠狠色丁香久久婷婷综合_中| 中文字幕av在线一区二区三区| 欧美在线观看视频一区二区三区| 免费看欧美美女黄的网站| 日韩亚洲欧美中文三级| 国产精品一区免费视频| 亚洲国产综合人成综合网站| 2021久久国产精品不只是精品| 色综合天天综合网天天狠天天| 麻豆精品视频在线观看| 亚洲激情自拍偷拍| 国产视频一区不卡| 日韩三级精品电影久久久 | 成人综合激情网| 天堂午夜影视日韩欧美一区二区| 久久久久国产一区二区三区四区| 91九色最新地址| 粉嫩aⅴ一区二区三区四区五区| 亚洲v中文字幕| 亚洲欧洲av另类| 国产色产综合产在线视频| 欧美一级艳片视频免费观看| 欧美亚洲图片小说| 色综合久久中文字幕| 国产激情一区二区三区| 久久精品久久99精品久久| 亚洲宅男天堂在线观看无病毒| 欧美精彩视频一区二区三区| 欧美日韩你懂的| 欧洲色大大久久| 色噜噜久久综合| 北岛玲一区二区三区四区| 高清免费成人av| 国产一区免费电影| 麻豆成人久久精品二区三区红| 亚洲成人免费在线观看| 一区二区三区在线观看国产| 亚洲欧美日韩国产成人精品影院 | 精品国产百合女同互慰| 在线播放日韩导航| 欧美精品少妇一区二区三区| 日本久久一区二区三区| 日本精品一级二级| 色综合色综合色综合 | 国产精品久久久久婷婷| 国产日韩av一区二区| 国产亚洲女人久久久久毛片| 777a∨成人精品桃花网| 欧美综合视频在线观看| 成人黄动漫网站免费app| 99这里只有精品| 91女人视频在线观看| 97se亚洲国产综合自在线不卡| youjizz久久| 99国产精品久| 欧美视频第二页| 9191精品国产综合久久久久久| 91精品国产欧美日韩| 精品久久久久一区| 久久精品视频网| 国产精品久久久久一区二区三区 | 欧美一区二区三区日韩视频| 欧美成人性战久久| 久久影音资源网| 欧美激情一区二区三区在线| 亚洲色图欧洲色图婷婷| 亚洲一区欧美一区| 免费的国产精品| 国产传媒一区在线| 99re66热这里只有精品3直播| 91九色02白丝porn| 日韩三级中文字幕| 国产精品久久久久久久久免费桃花| 国产精品麻豆久久久| 日韩久久一区二区| 天天综合网天天综合色| 国产麻豆成人精品| 欧美亚洲综合在线| 精品国产污污免费网站入口| 国产精品久久久久9999吃药| 午夜精品久久久久久久久| 极品少妇xxxx精品少妇| www.99精品| 欧美一区国产二区| 欧美国产1区2区| 天堂精品中文字幕在线| 国产福利精品一区二区| 欧美性大战久久久久久久| 久久久亚洲午夜电影| 亚洲激情网站免费观看| 日韩精品国产欧美| 不卡在线观看av| 欧美一区二区三区色| 欧美国产97人人爽人人喊| 亚洲欧洲性图库| 久久91精品国产91久久小草| 在线观看国产一区二区| 久久精品人人做人人综合 | 26uuu精品一区二区三区四区在线 26uuu精品一区二区在线观看 | 成人免费视频网站在线观看| 在线免费视频一区二区| 精品成人免费观看| 亚洲成人综合在线| 成人爽a毛片一区二区免费| 7777女厕盗摄久久久| 亚洲精品成a人| 成人动漫一区二区三区| 欧美xxxx在线观看| 亚洲妇熟xx妇色黄| 99精品国产91久久久久久| 久久久久久久久久久久久女国产乱| 国产精品欧美经典| 另类小说图片综合网| 色综合久久88色综合天天6| 精品国产露脸精彩对白| 亚洲成人免费视频| 在线精品视频一区二区| 亚洲欧洲另类国产综合| 国产精品一二三| 精品国产乱码久久久久久图片| 日日摸夜夜添夜夜添亚洲女人| 99精品视频一区| 精品国产免费人成电影在线观看四季| 亚洲高清久久久| 欧美性欧美巨大黑白大战| 亚洲色图清纯唯美| 91丨porny丨首页| 洋洋av久久久久久久一区| 欧美视频在线播放| 免费人成网站在线观看欧美高清| 日韩视频一区在线观看| 久久99精品网久久| 久久久久久久久岛国免费| 成人国产精品免费网站| 亚洲天堂a在线| 欧美日韩精品电影| 麻豆精品一区二区av白丝在线| 欧美成人a视频| 成人自拍视频在线观看| 亚洲影院免费观看| 91麻豆精品国产91久久久更新时间| 麻豆精品新av中文字幕| 国产亚洲综合在线| 99re亚洲国产精品| 午夜欧美电影在线观看| 日韩视频永久免费| 97精品久久久久中文字幕| 五月天亚洲婷婷| 久久久久99精品国产片| 色婷婷激情久久| 久久91精品国产91久久小草|