<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Fox4um - Uzak masa üstü bağlantısında kullanıcı sınırlaması]]></title>
	<link rel="self" href="http://www.fox4um.com/feed/atom/topic/1264/"/>
	<updated>2009-06-23T21:24:20Z</updated>
	<generator>PunBB</generator>
	<id>http://www.fox4um.com/topic/1264/uzak-masa-ustu-baglantisinda-kullanici-sinirlamasi/</id>
		<entry>
			<title type="html"><![CDATA[Re: Uzak masa üstü bağlantısında kullanıcı sınırlaması]]></title>
			<link rel="alternate" href="http://www.fox4um.com/post/7689/#p7689"/>
			<content type="html"><![CDATA[<p>etada ki o meşhur kulsay onun içinmiş demek. yıllarca kullsay ı çok anlamsız bulmuştum</p>]]></content>
			<author>
				<name><![CDATA[erdalyalcin]]></name>
				<uri>http://www.fox4um.com/user/28/</uri>
			</author>
			<updated>2009-06-23T21:24:20Z</updated>
			<id>http://www.fox4um.com/post/7689/#p7689</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Uzak masa üstü bağlantısında kullanıcı sınırlaması]]></title>
			<link rel="alternate" href="http://www.fox4um.com/post/7680/#p7680"/>
			<content type="html"><![CDATA[<p>benim yıllardır kullandığım çok basit ve çok başarılı bir yöntem var:
<br />5 kayıtlı bir tablo oluştur. giren kullanıcı sırayla ilk kayıttan itibaren 5 kayıttan birini kilitlemeye çalışsın. eğer başarırsa tamamdır yoksa çok fazla kullanıcı deyip dışarı atsın. programdan çıkmadığın sürece bu kaydın kilidini çözme. mesela eta-logo bu konuda bir field ın içeriğini değiştirir. ancak bilgisayarı düğmeden kapatınca düzeltme işlemi gerekir. benim yöntemde böyle birşey gereksiz.</p>]]></content>
			<author>
				<name><![CDATA[metin]]></name>
				<uri>http://www.fox4um.com/user/39/</uri>
			</author>
			<updated>2009-06-23T08:30:03Z</updated>
			<id>http://www.fox4um.com/post/7680/#p7680</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Uzak masa üstü bağlantısında kullanıcı sınırlaması]]></title>
			<link rel="alternate" href="http://www.fox4um.com/post/7668/#p7668"/>
			<content type="html"><![CDATA[<p>sağol hocam</p>]]></content>
			<author>
				<name><![CDATA[erdalyalcin]]></name>
				<uri>http://www.fox4um.com/user/28/</uri>
			</author>
			<updated>2009-06-20T20:43:22Z</updated>
			<id>http://www.fox4um.com/post/7668/#p7668</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Uzak masa üstü bağlantısında kullanıcı sınırlaması]]></title>
			<link rel="alternate" href="http://www.fox4um.com/post/7666/#p7666"/>
			<content type="html"><![CDATA[<p>Ben kullanici sinirlamak icin yapmiyorum ama her baglananin, network kart numarasi, makine adi, giris, cikis zamanlari ve o oturumlarina ait (ayni makineden birden fazla oturum acsa da her biri ayri) bir ID&#039;yi sakliyorum. Sanirim sen bunu ayni anda acik olanlari saymak icin kullanabillirsin. Sunun gibi birsey:
</p><div class="codebox"><div class="head">Visual Fox Pro</div><table class="visualfoxpro fxcode"><tbody><tr class="li1"><td class="ln"><pre class="de1">1
<br />2
<br />3
<br />4
<br />5
<br />6
<br />7
<br />8
<br />9
<br />10
<br />11
<br />12
<br />13
<br />14
<br />15
<br />16
<br />17
<br />18
<br />19
<br />20
<br />21
<br />22
<br />23
<br />24
<br />25
<br />26
<br />27
<br />28
<br />29
<br />30
<br />31
<br />32
<br />33
<br />34
<br />35
<br />36
<br />37
<br />38
<br />39
<br />40
<br />41
<br />42
<br />43
<br />44
<br />45
<br />46
<br />47
<br />48
<br />49
<br />50
<br />51
<br />52
<br />53
<br />54
<br />55
<br />56
<br />57
<br />58
<br />59
<br />60
<br />61
<br />62
<br />63
<br />64
<br />65
<br />66
<br />67
<br />68
<br />69
<br />70
<br />71
<br />72
<br />73
<br />74
<br />75
<br />76
<br />77
<br />78
<br />79
<br />80
<br />81
<br />82
<br />83
<br />84
<br />85
<br />86
<br />87
<br />88
<br />89
<br />90
<br />91
<br />92
<br />93
<br />94
<br />95
<br />96
<br />97
<br />98
<br />99
<br />100
<br />101
<br />102
<br />103
<br />104
<br />105
<br />106
<br />107
<br />108
<br />109
<br />110
<br />111
<br />112
<br />113
<br />114
<br />115
<br />116
<br />117
<br />118
<br />119
<br />120
<br />121
<br />122
<br />123
<br />124
<br />125
<br />126
<br />127
<br />128
<br />129
<br />130
<br />131
<br />132
<br />133
<br />134
<br />135
<br />136
<br />137
<br />138
<br />139
<br />140
<br />141
<br />142
<br />143
<br />144
<br />145
<br />146
<br />147
<br />148
<br />149
<br />150
<br /></pre></td><td class="de1"><pre class="de1"><span class="sy0">*</span> <span class="kw1">CREATE</span> <span class="kw2">TABLE</span> cnlog <span class="sy0">;</span>
<br /><span class="sy0">*</span> <span class="br0">&#40;</span>NIC c<span class="br0">&#40;</span><span class="nu0">12</span><span class="br0">&#41;</span><span class="sy0">,</span> CName c<span class="br0">&#40;</span><span class="nu0">50</span><span class="br0">&#41;</span><span class="sy0">,</span> UNAME c<span class="br0">&#40;</span><span class="nu0">50</span><span class="br0">&#41;</span><span class="sy0">,</span> uptime <span class="kw3">t</span><span class="sy0">,</span> downTime <span class="kw3">t</span> <span class="kw3">null</span><span class="sy0">,</span> uID c<span class="br0">&#40;</span><span class="nu0">38</span><span class="br0">&#41;</span><span class="br0">&#41;</span>
<br />&nbsp;
<br /><span class="kw1">PUBLIC</span> oApp
<br />oApp <span class="sy0">=</span> <span class="kw1">Createobject</span><span class="br0">&#40;</span>'myApp'<span class="br0">&#41;</span>
<br /><span class="kw1">IF</span> oApp<span class="sy0">.</span><span class="me1">CountSessions</span><span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="sy0">&lt;</span> <span class="nu0">5</span>
<br />&nbsp; &nbsp;oApp<span class="sy0">.</span><span class="me1">LogEntry</span><span class="br0">&#40;</span><span class="sy0">.</span><span class="kw3">T</span><span class="sy0">.</span><span class="br0">&#41;</span>
<br /><span class="kw1">ELSE</span>
<br />&nbsp; &nbsp;<span class="sy0">?</span> <span class="st0">&quot;Kullanici kotasi dolu&quot;</span><span class="sy0">,</span> oApp<span class="sy0">.</span><span class="me1">CountSessions</span><span class="br0">&#40;</span><span class="br0">&#41;</span>
<br />&nbsp; &nbsp;<span class="kw2">RETURN</span> 
<br /><span class="kw1">endif</span>
<br />&nbsp;
<br /><span class="sy0">?</span> <span class="st0">&quot;Kullanima izin verildi&quot;</span><span class="sy0">,</span> oApp<span class="sy0">.</span><span class="me1">CountSessions</span><span class="br0">&#40;</span><span class="br0">&#41;</span>
<br /><span class="kw2">ON</span> <span class="kw3">SHUTDOWN</span> <span class="kw1">do</span> appShutdown
<br /><span class="sy0">*</span><span class="kw2">read</span> <span class="kw2">events</span>
<br />&nbsp;
<br /><span class="kw1">PROCEDURE</span> appshutdown
<br />&nbsp; oApp<span class="sy0">.</span><span class="me1">LogEntry</span><span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="sy0">&amp;&amp;</span> <span class="kw1">exit</span>
<br /><span class="kw1">endproc</span>
<br />&nbsp;
<br /><span class="kw1">Define</span> <span class="kw3">Class</span> myApp <span class="kw2">As</span> <span class="kw4">Custom</span>
<br />&nbsp; sessionID <span class="sy0">=</span> <span class="sy0">.</span><span class="kw3">null</span><span class="sy0">.</span>
<br />&nbsp; 
<br />&nbsp; <span class="kw1">Procedure</span> LogEntry<span class="br0">&#40;</span>tlEntry<span class="br0">&#41;</span>
<br />&nbsp; &nbsp; <span class="kw1">Local</span> oSys<span class="sy0">,</span>lcMacAddress<span class="sy0">,</span>lcUserName<span class="sy0">,</span>lcComputerName<span class="sy0">,</span>ltTime<span class="sy0">,</span>lcGUID
<br />&nbsp; &nbsp; oSys <span class="sy0">=</span> <span class="kw1">Createobject</span><span class="br0">&#40;</span>'sysutil'<span class="br0">&#41;</span>
<br />&nbsp; &nbsp; lcMacAddress <span class="sy0">=</span> oSys<span class="sy0">.</span><span class="me1">getMac</span><span class="br0">&#40;</span><span class="br0">&#41;</span>
<br />&nbsp; &nbsp; lcComputerName <span class="sy0">=</span> <span class="kw2">Upper</span><span class="br0">&#40;</span>oSys<span class="sy0">.</span><span class="me1">ComputerName</span><span class="br0">&#40;</span><span class="br0">&#41;</span><span class="br0">&#41;</span>
<br />&nbsp; &nbsp; lcUserName <span class="sy0">=</span> oSys<span class="sy0">.</span><span class="me1">UserName</span><span class="br0">&#40;</span><span class="br0">&#41;</span>
<br />&nbsp; &nbsp; ltTime<span class="sy0">=</span><span class="kw1">Datetime</span><span class="br0">&#40;</span><span class="br0">&#41;</span>
<br />&nbsp;
<br />&nbsp; &nbsp; <span class="kw2">this</span><span class="sy0">.</span><span class="me1">CloseOrphans</span><span class="br0">&#40;</span>m<span class="sy0">.</span><span class="me1">lcMacAddress</span><span class="sy0">,</span> m<span class="sy0">.</span><span class="me1">lcComputerName</span><span class="br0">&#41;</span>
<br />&nbsp;
<br />&nbsp; &nbsp; <span class="kw1">If</span> m<span class="sy0">.</span><span class="me1">tlEntry</span>
<br />&nbsp; &nbsp; &nbsp; lcGUID <span class="sy0">=</span> oSys<span class="sy0">.</span><span class="me1">getGUID</span><span class="br0">&#40;</span><span class="br0">&#41;</span>
<br />&nbsp; &nbsp; &nbsp; <span class="kw1">Insert</span> <span class="kw2">Into</span> cnlog <span class="sy0">;</span>
<br />&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#40;</span>NIC<span class="sy0">,</span> CName<span class="sy0">,</span> UNAME<span class="sy0">,</span> uptime<span class="sy0">,</span> downtime<span class="sy0">,</span> uID<span class="br0">&#41;</span> <span class="sy0">;</span>
<br />&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">VALUES</span> <span class="sy0">;</span>
<br />&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#40;</span>m<span class="sy0">.</span><span class="me1">lcMacAddress</span><span class="sy0">,</span> m<span class="sy0">.</span><span class="me1">lcComputerName</span><span class="sy0">,</span> m<span class="sy0">.</span><span class="me1">lcUserName</span><span class="sy0">,</span> m<span class="sy0">.</span><span class="me1">ltTime</span><span class="sy0">,</span><span class="kw3">NULL</span><span class="sy0">,</span> m<span class="sy0">.</span><span class="me1">lcGUID</span><span class="br0">&#41;</span>
<br />&nbsp; &nbsp; &nbsp; <span class="sy0">*</span> <span class="kw1">Create</span> semaphore
<br />&nbsp; &nbsp; &nbsp; <span class="kw2">this</span><span class="sy0">.</span><span class="me1">IsAppRunning</span><span class="br0">&#40;</span><span class="kw2">Trim</span><span class="br0">&#40;</span>m<span class="sy0">.</span><span class="me1">lcGUID</span><span class="br0">&#41;</span><span class="br0">&#41;</span> <span class="sy0">&amp;&amp;</span> Start semaphore
<br />&nbsp; &nbsp; &nbsp; <span class="kw2">this</span><span class="sy0">.</span><span class="me1">sessionID</span> <span class="sy0">=</span> m<span class="sy0">.</span><span class="me1">lcGUID</span>
<br />&nbsp; &nbsp; <span class="kw1">Else</span>
<br />&nbsp; &nbsp; &nbsp; lcGUID <span class="sy0">=</span> <span class="kw2">this</span><span class="sy0">.</span><span class="me1">sessionID</span>
<br />&nbsp; &nbsp; &nbsp; <span class="kw2">Update</span> cnlog <span class="kw2">Set</span> downtime <span class="sy0">=</span> m<span class="sy0">.</span><span class="me1">ltTime</span> <span class="kw3">Where</span> uID <span class="sy0">=</span> m<span class="sy0">.</span><span class="me1">lcGUID</span>
<br />&nbsp; &nbsp; <span class="kw1">Endif</span>
<br />&nbsp; <span class="kw1">Endproc</span>
<br />&nbsp;
<br />&nbsp; <span class="kw1">Procedure</span> CloseOrphans<span class="br0">&#40;</span>m<span class="sy0">.</span><span class="me1">tcMacAddress</span><span class="sy0">,</span> m<span class="sy0">.</span><span class="me1">tcComputerName</span><span class="br0">&#41;</span>
<br />&nbsp; &nbsp; <span class="kw1">Local</span> <span class="kw2">Array</span> aOpenSession<span class="br0">&#91;</span><span class="nu0">1</span><span class="br0">&#93;</span>
<br />&nbsp; &nbsp; <span class="kw1">Local</span> ltTime
<br />&nbsp; &nbsp; ltTime <span class="sy0">=</span> <span class="kw1">Datetime</span><span class="br0">&#40;</span><span class="br0">&#41;</span>
<br />&nbsp; &nbsp; <span class="kw2">Select</span> uID <span class="kw2">From</span> cnlog <span class="sy0">;</span>
<br />&nbsp; &nbsp; &nbsp; <span class="kw3">WHERE</span> NIC <span class="sy0">=</span> m<span class="sy0">.</span><span class="me1">tcMacAddress</span> <span class="kw2">And</span> CName <span class="sy0">=</span> m<span class="sy0">.</span><span class="me1">tcComputerName</span> <span class="kw2">And</span> downtime <span class="kw2">Is</span> <span class="kw3">Null</span> <span class="sy0">;</span>
<br />&nbsp; &nbsp; &nbsp; <span class="kw2">INTO</span> <span class="kw2">Array</span> aOpenSession
<br />&nbsp; &nbsp; <span class="kw1">If</span> <span class="kw2">_Tally</span> <span class="sy0">&gt;</span> <span class="nu0">0</span>
<br />&nbsp; &nbsp; &nbsp; <span class="kw1">Local</span> ix
<br />&nbsp; &nbsp; &nbsp; <span class="kw1">For</span> ix<span class="sy0">=</span><span class="nu0">1</span> <span class="kw3">To</span> <span class="kw1">Alen</span><span class="br0">&#40;</span>aOpenSession<span class="sy0">,</span><span class="nu0">1</span><span class="br0">&#41;</span>
<br />&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">If</span> <span class="sy0">!</span><span class="kw2">this</span><span class="sy0">.</span><span class="me1">IsAppRunning</span><span class="br0">&#40;</span><span class="kw2">Trim</span><span class="br0">&#40;</span>aOpenSession<span class="br0">&#91;</span>m<span class="sy0">.</span><span class="me1">ix</span><span class="sy0">,</span><span class="nu0">1</span><span class="br0">&#93;</span><span class="br0">&#41;</span><span class="br0">&#41;</span> <span class="sy0">&amp;&amp;</span> <span class="kw2">Check</span> <span class="kw1">if</span> it's already running
<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">Update</span> cnlog <span class="kw2">Set</span> <span class="sy0">;</span>
<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; downtime <span class="sy0">=</span> m<span class="sy0">.</span><span class="me1">ltTime</span><span class="sy0">,</span> forced <span class="sy0">=</span> <span class="sy0">.</span><span class="kw3">T</span><span class="sy0">.</span> <span class="sy0">;</span>
<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">WHERE</span> uID <span class="sy0">=</span> aOpenSession<span class="br0">&#91;</span>m<span class="sy0">.</span><span class="me1">ix</span><span class="sy0">,</span><span class="nu0">1</span><span class="br0">&#93;</span>
<br />&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">Endif</span>
<br />&nbsp; &nbsp; &nbsp; <span class="kw1">Endfor</span>
<br />&nbsp; &nbsp; <span class="kw1">Endif</span>
<br />&nbsp; <span class="kw1">Endproc</span>
<br />&nbsp;
<br />&nbsp; <span class="kw1">Procedure</span> IsAppRunning
<br />&nbsp; &nbsp; <span class="kw1">Lparameters</span> tcSemaphoreName
<br />&nbsp; &nbsp; <span class="kw1">Local</span> hsem<span class="sy0">,</span> lpszSemName
<br />&nbsp; &nbsp; <span class="kw1">#Define</span> ERROR_ALREADY_EXISTS <span class="nu0">183</span>
<br />&nbsp; &nbsp; <span class="kw1">Declare</span> <span class="kw2">Integer</span> GetLastError <span class="kw2">In</span> win32API
<br />&nbsp; &nbsp; <span class="kw1">Declare</span> <span class="kw2">Integer</span> CreateSemaphore <span class="kw2">In</span> WIN32API <span class="sy0">;</span>
<br />&nbsp; &nbsp; &nbsp; <span class="kw3">string</span> <span class="sy0">@</span> lpSemaphoreAttributes<span class="sy0">,</span> <span class="sy0">;</span>
<br />&nbsp; &nbsp; &nbsp; <span class="kw2">LONG</span> lInitialCount<span class="sy0">,</span> <span class="sy0">;</span>
<br />&nbsp; &nbsp; &nbsp; <span class="kw2">LONG</span> lMaximumCount<span class="sy0">,</span> <span class="sy0">;</span>
<br />&nbsp; &nbsp; &nbsp; <span class="kw3">string</span> <span class="sy0">@</span> lpName
<br />&nbsp; &nbsp; hsem <span class="sy0">=</span> CreateSemaphore<span class="br0">&#40;</span><span class="nu0">0</span><span class="sy0">,</span><span class="nu0">0</span><span class="sy0">,</span><span class="nu0">1</span><span class="sy0">,</span>tcSemaphoreName<span class="br0">&#41;</span>
<br />&nbsp; &nbsp; <span class="kw2">Return</span> <span class="br0">&#40;</span>hsem # <span class="nu0">0</span> <span class="kw2">And</span> GetLastError<span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="sy0">==</span> ERROR_ALREADY_EXISTS<span class="br0">&#41;</span>
<br />&nbsp; <span class="kw1">Endproc</span>
<br />&nbsp;
<br />&nbsp; <span class="kw1">Procedure</span> CountSessions
<br />&nbsp; &nbsp; <span class="kw1">Local</span> <span class="kw2">Array</span> aOpenSessions<span class="br0">&#91;</span><span class="nu0">1</span><span class="br0">&#93;</span>
<br />&nbsp; &nbsp; <span class="kw2">Select</span> <span class="kw1">Count</span><span class="br0">&#40;</span><span class="sy0">*</span><span class="br0">&#41;</span> <span class="kw2">From</span> cnlog <span class="kw3">Where</span> downtime <span class="kw2">Is</span> <span class="kw3">Null</span> <span class="kw2">Into</span> <span class="kw2">Array</span> aOpenSessions
<br />&nbsp; &nbsp; <span class="kw2">Return</span> aOpenSessions
<br />&nbsp; <span class="kw1">ENDPROC</span>
<br /><span class="kw1">Enddefine</span>
<br />&nbsp;
<br />&nbsp;
<br /><span class="kw1">Define</span> <span class="kw3">Class</span> sysutil <span class="kw2">As</span> <span class="kw4">Custom</span>
<br />&nbsp;
<br />&nbsp; <span class="kw1">Procedure</span> <span class="kw3">Init</span>
<br />&nbsp; &nbsp; <span class="kw2">This</span><span class="sy0">.</span><span class="me1">initDLLs</span><span class="br0">&#40;</span><span class="br0">&#41;</span>
<br />&nbsp; <span class="kw1">Endproc</span>
<br />&nbsp;
<br />&nbsp; <span class="kw1">Procedure</span> initDLLs
<br />&nbsp; &nbsp; <span class="kw1">Declare</span> <span class="kw2">Integer</span> WNetGetUser <span class="kw2">In</span> win32api <span class="sy0">;</span>
<br />&nbsp; &nbsp; &nbsp; <span class="kw3">string</span> <span class="sy0">@</span> lpszLocalName<span class="sy0">,</span> <span class="sy0">;</span>
<br />&nbsp; &nbsp; &nbsp; <span class="kw3">string</span> <span class="sy0">@</span> lpszUserName<span class="sy0">,</span> <span class="sy0">;</span>
<br />&nbsp; &nbsp; &nbsp; <span class="kw2">integer</span> <span class="sy0">@</span> lpcchBuffer
<br />&nbsp;
<br />&nbsp; &nbsp; <span class="kw1">Declare</span> <span class="kw2">Integer</span> GetComputerName <span class="kw2">In</span> Win32API <span class="sy0">;</span>
<br />&nbsp; &nbsp; &nbsp; <span class="kw3">STRING</span> <span class="sy0">@</span> lpComputerName<span class="sy0">,</span> <span class="kw2">Integer</span> <span class="sy0">@</span> nBufSize
<br />&nbsp;
<br />&nbsp; &nbsp; <span class="kw1">Declare</span> <span class="kw2">Integer</span> CoCreateGuid <span class="kw2">In</span> 'OLE32<span class="sy0">.</span><span class="kw1">dll</span>' <span class="sy0">;</span>
<br />&nbsp; &nbsp; &nbsp; <span class="kw3">string</span> <span class="sy0">@</span>pguid
<br />&nbsp; &nbsp; <span class="kw1">Declare</span> <span class="kw2">Integer</span> StringFromGUID2 <span class="kw2">In</span> 'OLE32<span class="sy0">.</span><span class="kw1">dll</span>' <span class="sy0">;</span>
<br />&nbsp; &nbsp; &nbsp; <span class="kw3">string</span> rguid<span class="sy0">,</span> <span class="kw3">String</span> <span class="sy0">@</span>lpsz<span class="sy0">,</span> <span class="kw2">Integer</span> cchMax
<br />&nbsp; &nbsp; <span class="kw1">Declare</span> <span class="kw2">Integer</span> UuidCreateSequential <span class="kw2">In</span> 'RPCRT4<span class="sy0">.</span><span class="kw1">dll</span>' &nbsp;<span class="kw3">String</span> <span class="sy0">@</span> Uuid
<br />&nbsp; &nbsp; <span class="kw1">Declare</span> <span class="kw2">Integer</span> UuidCreate <span class="kw2">In</span> 'RPCRT4<span class="sy0">.</span><span class="kw1">dll</span>' <span class="kw3">String</span> <span class="sy0">@</span>pguid
<br />&nbsp; <span class="kw1">Endproc</span>
<br />&nbsp;
<br />&nbsp; <span class="kw1">Procedure</span> getGUID
<br />&nbsp; &nbsp; <span class="kw1">Local</span> pguid<span class="sy0">,</span>rguid
<br />&nbsp; &nbsp; pguid<span class="sy0">=</span><span class="kw2">Replicate</span><span class="br0">&#40;</span><span class="kw1">Chr</span><span class="br0">&#40;</span><span class="nu0">0</span><span class="br0">&#41;</span><span class="sy0">,</span><span class="nu0">16</span><span class="br0">&#41;</span>
<br />&nbsp; &nbsp; rguid<span class="sy0">=</span><span class="kw2">Replicate</span><span class="br0">&#40;</span><span class="kw1">Chr</span><span class="br0">&#40;</span><span class="nu0">0</span><span class="br0">&#41;</span><span class="sy0">,</span><span class="nu0">80</span><span class="br0">&#41;</span>
<br />&nbsp; &nbsp; UuidCreate<span class="br0">&#40;</span><span class="sy0">@</span>pguid<span class="br0">&#41;</span>
<br />&nbsp; &nbsp; StringFromGUID2<span class="br0">&#40;</span>pguid<span class="sy0">,@</span>rguid<span class="sy0">,</span><span class="nu0">40</span><span class="br0">&#41;</span>
<br />&nbsp; &nbsp; <span class="kw2">Return</span> <span class="kw2">Strconv</span><span class="br0">&#40;</span><span class="kw4">Left</span><span class="br0">&#40;</span>rguid<span class="sy0">,</span><span class="nu0">76</span><span class="br0">&#41;</span><span class="sy0">,</span><span class="nu0">6</span><span class="br0">&#41;</span>
<br />&nbsp; <span class="kw1">Endproc</span>
<br />&nbsp;
<br />&nbsp; <span class="kw1">Procedure</span> getMac
<br />&nbsp; &nbsp; <span class="kw1">Local</span> pguid<span class="sy0">,</span>rguid<span class="sy0">,</span>lcOldError<span class="sy0">,</span>lnResult
<br />&nbsp; &nbsp; pguid<span class="sy0">=</span><span class="kw2">Replicate</span><span class="br0">&#40;</span><span class="kw1">Chr</span><span class="br0">&#40;</span><span class="nu0">0</span><span class="br0">&#41;</span><span class="sy0">,</span><span class="nu0">16</span><span class="br0">&#41;</span>
<br />&nbsp; &nbsp; rguid<span class="sy0">=</span><span class="kw2">Replicate</span><span class="br0">&#40;</span><span class="kw1">Chr</span><span class="br0">&#40;</span><span class="nu0">0</span><span class="br0">&#41;</span><span class="sy0">,</span><span class="nu0">80</span><span class="br0">&#41;</span>
<br />&nbsp; &nbsp; lcOldError <span class="sy0">=</span> <span class="kw2">On</span><span class="br0">&#40;</span>'<span class="kw3">error</span>'<span class="br0">&#41;</span>
<br />&nbsp; &nbsp; <span class="kw2">On</span> <span class="kw3">Error</span> lnResult <span class="sy0">=</span> CoCreateGuid<span class="br0">&#40;</span><span class="sy0">@</span>pguid<span class="br0">&#41;</span>
<br />&nbsp; &nbsp; UuidCreateSequential<span class="br0">&#40;</span><span class="sy0">@</span>pguid<span class="br0">&#41;</span>
<br />&nbsp; &nbsp; <span class="kw2">On</span> <span class="kw3">Error</span> <span class="sy0">&amp;</span>lcOldError
<br />&nbsp; &nbsp; StringFromGUID2<span class="br0">&#40;</span>pguid<span class="sy0">,@</span>rguid<span class="sy0">,</span><span class="nu0">40</span><span class="br0">&#41;</span>
<br />&nbsp; &nbsp; <span class="kw2">Return</span> <span class="kw2">Substr</span><span class="br0">&#40;</span> <span class="kw2">Strconv</span><span class="br0">&#40;</span><span class="kw4">Left</span><span class="br0">&#40;</span>rguid<span class="sy0">,</span><span class="nu0">76</span><span class="br0">&#41;</span><span class="sy0">,</span><span class="nu0">6</span><span class="br0">&#41;</span><span class="sy0">,</span> <span class="nu0">26</span><span class="sy0">,</span><span class="nu0">12</span><span class="br0">&#41;</span>
<br />&nbsp; <span class="kw1">Endproc</span>
<br />&nbsp;
<br />&nbsp; <span class="kw1">Procedure</span> UserName
<br />&nbsp; &nbsp; <span class="kw1">Local</span> lpszUserName<span class="sy0">,</span>lpcchBuffer
<br />&nbsp; &nbsp; lpszUserName <span class="sy0">=</span> <span class="kw3">Space</span><span class="br0">&#40;</span><span class="nu0">100</span><span class="br0">&#41;</span>
<br />&nbsp; &nbsp; lpcchBuffer<span class="sy0">=</span><span class="nu0">100</span>
<br />&nbsp; &nbsp; <span class="kw2">Return</span> <span class="kw1">Iif</span><span class="br0">&#40;</span> WNetGetUser<span class="br0">&#40;</span><span class="nu0">0</span><span class="sy0">,@</span>lpszUserName<span class="sy0">,@</span>lpcchBuffer<span class="br0">&#41;</span><span class="sy0">=</span><span class="nu0">0</span><span class="sy0">,;</span>
<br />&nbsp; &nbsp; &nbsp; <span class="kw2">substr</span><span class="br0">&#40;</span>lpszUserName<span class="sy0">,</span><span class="nu0">1</span><span class="sy0">,</span><span class="kw2">At</span><span class="br0">&#40;</span><span class="kw1">Chr</span><span class="br0">&#40;</span><span class="nu0">0</span><span class="br0">&#41;</span><span class="sy0">,</span>lpszUserName<span class="br0">&#41;</span><span class="sy0">-</span><span class="nu0">1</span><span class="br0">&#41;</span><span class="sy0">,</span>'' <span class="br0">&#41;</span>
<br />&nbsp; <span class="kw1">Endproc</span>
<br />&nbsp;
<br />&nbsp; <span class="kw1">Procedure</span> ComputerName
<br />&nbsp; &nbsp; <span class="kw1">Local</span> lcComputerName<span class="sy0">,</span>lnBufSize
<br />&nbsp; &nbsp; <span class="kw2">Store</span> <span class="kw3">Space</span><span class="br0">&#40;</span><span class="nu0">254</span><span class="br0">&#41;</span> <span class="kw3">To</span> lcComputerName
<br />&nbsp; &nbsp; lnBufSize <span class="sy0">=</span> <span class="nu0">254</span>
<br />&nbsp; &nbsp; <span class="kw2">Return</span> <span class="sy0">;</span>
<br />&nbsp; &nbsp; &nbsp; <span class="kw1">iif</span> <span class="br0">&#40;</span> GetComputerName<span class="br0">&#40;</span><span class="sy0">@</span>lcComputerName<span class="sy0">,@</span>lnBufSize<span class="br0">&#41;</span> # <span class="nu0">0</span> <span class="sy0">,;</span>
<br />&nbsp; &nbsp; &nbsp; <span class="kw2">SUBSTR</span><span class="br0">&#40;</span>m<span class="sy0">.</span><span class="me1">lcComputerName</span><span class="sy0">,</span><span class="nu0">1</span><span class="sy0">,</span>m<span class="sy0">.</span><span class="me1">lnBufSize</span><span class="br0">&#41;</span><span class="sy0">,</span>'' <span class="br0">&#41;</span>
<br />&nbsp; <span class="kw1">Endproc</span>
<br /><span class="kw1">Enddefine</span></pre></td></tr></tbody></table></div><p>
</p><p>Akilli biri bunu rahat gecer ama bu sadece baslangic. Onlar akillliysa biz daha akilliyiz, duz null datetime yerine tum kayit sifrelenmis xml filan olabilir.</p>]]></content>
			<author>
				<name><![CDATA[cetinbasoz]]></name>
				<uri>http://www.fox4um.com/user/11/</uri>
			</author>
			<updated>2009-06-20T14:30:31Z</updated>
			<id>http://www.fox4um.com/post/7666/#p7666</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Uzak masa üstü bağlantısında kullanıcı sınırlaması]]></title>
			<link rel="alternate" href="http://www.fox4um.com/post/7662/#p7662"/>
			<content type="html"><![CDATA[<p>üsdadım,şimdi olayı daha net anladım sanırım.Geçenlerde aynı olay bizim başımıza geldi.Şirket muhasebesinde kullanılan çok meşhur bir program 4 kullanıcılı olararak satın alınmış.Bizde var 14 kullanıcı ? eee ne yapacaz şimdi :-) ?
<br />Hemen kurdum Programı Server 2008 e şakır şakır çalışıyor ayıptır söylemesi.Bence bu problem&nbsp; şu şekide çözülebilir.Programına muhtemelen user name ve şifre ile girdiriyorsundur.Bunları girerken bir yere yazsan ve aynı anda database yi kullanan kişileri saysan, kullanıcı sayısı örneğin 5 i geçtiğinde uyarsa? bizde bir program var adamlar bunu yapmış.Bence bu şekilde olabilir sen ne dersin?Diğer üsdatların görüşlerinde önemli tabiiki</p>]]></content>
			<author>
				<name><![CDATA[neyzen]]></name>
				<uri>http://www.fox4um.com/user/333/</uri>
			</author>
			<updated>2009-06-20T11:15:22Z</updated>
			<id>http://www.fox4um.com/post/7662/#p7662</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Uzak masa üstü bağlantısında kullanıcı sınırlaması]]></title>
			<link rel="alternate" href="http://www.fox4um.com/post/7661/#p7661"/>
			<content type="html"><![CDATA[<p>üstad bu söylediğin ayar lar sistemcinin yapması gerekenler ve bunu fabrikanın bilgi işlemi yapıyor
<br />benim sorunum şu programı 5 kullanıcı olarak sattım.
<br />normal networkteki kullanıcıların&nbsp; protect olayını program kontrol ediyor fiziksel olarak başka makina olduğu için.
<br />ama müşteri uzak masa üstü bağlantısında 10 kullanıcı olarak kullanabiliyor.
<br />çünkü ana makinatada programın çalışması ayarlandığında uzak masa üstüyle bağlanabilen tüm kullanıcılar programı orda kullanabiliyor.
<br />anlatabildimmi ?&nbsp; yani müşterinin kendi sistemcisi var ve ona bağlı bana değil
<br />ben programın protect algoritması konusunda öneri istiyorum.
<br />sistem ayarlarını müşteriler hallettirirler. biz müdahale edemeyiz</p>]]></content>
			<author>
				<name><![CDATA[erdalyalcin]]></name>
				<uri>http://www.fox4um.com/user/28/</uri>
			</author>
			<updated>2009-06-20T10:25:16Z</updated>
			<id>http://www.fox4um.com/post/7661/#p7661</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Uzak masa üstü bağlantısında kullanıcı sınırlaması]]></title>
			<link rel="alternate" href="http://www.fox4um.com/post/7660/#p7660"/>
			<content type="html"><![CDATA[<p>erdalyalçın,Kullanıcı sınırlamasından, Harddisk sürücüleri üzerindeki klasör ve dosyaların userler tarafından görüntülenmemesi,ancak izin verdiğin programların çalıştırılması olduğunu varsayarak,Windows server 2008 kullanan biri olarak ayarlarımı yazıyorum.(2003 server de de benzerdir.Daha önce görmüştüm ancak ben direk 2008 den başladığım için yerleri ve menü isimleri farklı olabilir.)Öncekikle her kişiye, Aktif direcoty kullanıcıları ve bilgisayarları menüsünden&nbsp; kullanıcı ve şifre oluşturuyorsun.Bende İnternet üzerinden erişim olduğundan Domain users ve remote desktop users gruplarınada her kişiyi üye olarak atadım.Daha sonra Server üzerindeki disk sürücüleri üzerine gelip sağtuş /Özellikler/güvenlik/ sekmesinde&nbsp; &quot;Users&quot; grubunu kaldırıp,&quot;Everyone&quot; grubunu ekleyip izinler kısmında tüm işaretleri kaldırıp &quot;Yaz&quot; izini veriyorum.Gerçi burada &quot;Users&quot; grubuna da bu işlem uygulansa belki aynı sonucu verebilir denemek lazım.
<br />&nbsp; &nbsp;daha sonra İşletim sisteminin kurulu olduğu diskte &quot;Kullanıcılar(USERS)&quot; klasörü var.Buraya oluşturduğun her kullanıcı için profil açıyor.istediğin kullanıcıyı seçiyorsun.Desktop klasörüne istediğin programın kısa yolunu kopyalıyorsun.İstediğin programı o user masa üstünde görüyor ve kullanıyor.C yada D sürücüsünde herhangi bir klasörü incelemek isterse,Admin şifresi sorulduğundan sorun çözülmüş oluyor.Kullanıcı kendi masa üstünde ve kendi belgelerim klasöründe çalışmış oluyor.Umarım işini görür.İsteğimi tam olarak yazarsan,sanırım daha fazla yardımcı olabiliriz diye düşünüyorum.Kolay gelsin..</p>]]></content>
			<author>
				<name><![CDATA[neyzen]]></name>
				<uri>http://www.fox4um.com/user/333/</uri>
			</author>
			<updated>2009-06-20T09:44:28Z</updated>
			<id>http://www.fox4um.com/post/7660/#p7660</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Uzak masa üstü bağlantısında kullanıcı sınırlaması]]></title>
			<link rel="alternate" href="http://www.fox4um.com/post/7658/#p7658"/>
			<content type="html"><![CDATA[<p>herkese slm
<br />uzak masaüstü bağlantısında kullanıcı sınırlaması nasıl yapılabilir?</p>]]></content>
			<author>
				<name><![CDATA[erdalyalcin]]></name>
				<uri>http://www.fox4um.com/user/28/</uri>
			</author>
			<updated>2009-06-20T05:31:57Z</updated>
			<id>http://www.fox4um.com/post/7658/#p7658</id>
		</entry>
</feed>

